[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-devel
Subject: Re: enough info in backtraces ?
From: Stephan Binner <binner () kde ! org>
Date: 2002-04-28 21:02:00
[Download RAW message or body]
On Sunday 28 April 2002 20:47, David Faure wrote:
> If this fixes the crash, then I suppose some other code somewhere
> else (the part manager's eventFilter maybe?) has problems when
> catching a focus-in event and there's currently no active part.
After further investigation, the problem is in PartManager::findPartFromWidget
where "it.current()->widget()" fails because the dead part is still in list.
Proper fix is to remove part before view in KonqViewManager::removePart, OK?
Bye,
Steve
["konsolepart-exit-crash-2.diff" (text/x-diff)]
Index: konq_viewmgr.cc
===================================================================
RCS file: /home/kde/kdebase/konqueror/konq_viewmgr.cc,v
retrieving revision 1.177
diff -u -3 -p -r1.177 konq_viewmgr.cc
--- konq_viewmgr.cc 2002/03/18 10:22:51 1.177
+++ konq_viewmgr.cc 2002/04/28 20:35:40
@@ -295,6 +295,9 @@ void KonqViewManager::removePart( KParts
// If we were called by PartManager::slotObjectDestroyed, then the inheritance has
// been deleted already... Can't use inherits().
+
+ //kdDebug(1202) << "Calling KParts::PartManager::removePart " << part << endl;
+ KParts::PartManager::removePart( part );
KonqView * view = m_pMainWindow->childView( static_cast<KParts::ReadOnlyPart *>(part) );
if ( view ) // the child view still exists, so we are in case 1
@@ -321,8 +324,6 @@ void KonqViewManager::removePart( KParts
removeView( view );
}
- //kdDebug(1202) << "Calling KParts::PartManager::removePart " << part << endl;
- KParts::PartManager::removePart( part );
//kdDebug(1202) << "KonqViewManager::removePart ( " << part << " ) done" << endl;
}
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic