[prev in list] [next in list] [prev in thread] [next in thread] 

List:       konq-bugs
Subject:    [Bug 200815] Edited the toolbar of Konqueror and it crashed
From:       Olivier Goffart <ogoffart () kde ! org>
Date:       2009-07-31 7:58:59
Message-ID: 20090731075859.3C02B179AD () immanuel ! kde ! org
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=200815


Olivier Goffart <ogoffart@kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ogoffart@kde.org




--- Comment #6 from Olivier Goffart <ogoffart kde org>  2009-07-31 09:58:56 ---
valgrind output:
(kde trunk r1001942,  qt4.5 from git)

It looks like the KMenu is destryoed while it's being pressed 
(probably because there is reentrency in the event loop)
Just a guess,  but maybe the edit toolbar dialog is called with exec() instead
of show()

my qmenu.cpp:1007       activationRecursionGuard = false;


konqueror(15093) KDEPrivate::KEditToolBarWidgetPrivate::slotToolBarSelected:
found toolbar "mainToolBar <khtml_kget>" m_currentXmlData set to
konqueror(15093) KDEPrivate::KEditToolBarWidget::save: "<!DOCTYPE kpartgui>     
<kpartgui version="3" name="khtml_kget" library="khtml_kget" >                  
 <MenuBar>                                                                      
  <Menu name="tools" >                                                          
   <text>&amp;Tools</text>                                                      
   <Action name="kget_menu" />                                                  
  </Menu>                                                                       
 </MenuBar>                                                                     
 <ToolBar noMerge="1" name="mainToolBar" >                                      
  <Action name="kget_menu" />                                                   
 </ToolBar>                                                                     
</kpartgui>                                                                     
"                                                                               
konqueror(15093) KXMLGUIBuilder::removeContainer: Unhandled container to remove
:  KonqMainWindow                                            
QWidget::insertAction: Attempt to insert null action                            
==15093==                                                                       
==15093== Invalid read of size 1                                                
==15093==    at 0x8004D2C:
QMenuPrivate::activateCausedStack(QList<QPointer<QWidget> > const&, QAction*,
QAction::ActionEvent, bool) (qmenu.cpp:1007)
==15093==    by 0x800AC69: QMenuPrivate::activateAction(QAction*,
QAction::ActionEvent, bool) (qmenu.cpp:1060)                                    
==15093==    by 0x67536AD: KMenu::mouseReleaseEvent(QMouseEvent*)
(kmenu.cpp:456)                                                                 
==15093==    by 0x7C6EFDF: QWidget::event(QEvent*) (qwidget.cpp:7554)           
==15093==    by 0x800D42A: QMenu::event(QEvent*) (qmenu.cpp:2353)               
==15093==    by 0x7C2057B: QApplicationPrivate::notify_helper(QObject*,
QEvent*) (qapplication.cpp:4065)                                             
==15093==    by 0x7C27690: QApplication::notify(QObject*, QEvent*)
(qapplication.cpp:3767)                                                         
==15093==    by 0x6681965: KApplication::notify(QObject*, QEvent*)
(kapplication.cpp:302)                                                          
==15093==    by 0x752573B: QCoreApplication::notifyInternal(QObject*, QEvent*)
(qcoreapplication.cpp:610)                                            
==15093==    by 0x7C26F5F: QApplicationPrivate::sendMouseEvent(QWidget*,
QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&)
(qcoreapplication.h:216)
==15093==    by 0x7C8D30D: QETWidget::translateMouseEvent(_XEvent const*)
(qapplication_x11.cpp:4343)                                                     
==15093==    by 0x7C8BBE8: QApplication::x11ProcessEvent(_XEvent*)
(qapplication_x11.cpp:3550)                                                     
==15093==  Address 0xefbf4a0 is 40 bytes inside a block of size 112 free'd      
==15093==    at 0x4C2210F: operator delete(void*) (in
/usr/lib/valgrind/amd64-linux/vgpreload_memcheck.so)                            
==15093==    by 0x6224118: QDomNodePrivate::~QDomNodePrivate() (qdom.cpp:1496)  
==15093==    by 0x62252D9: QDomElementPrivate::~QDomElementPrivate()
(qdom.cpp:4433)                                                                 
==15093==    by 0x6224118: QDomNodePrivate::~QDomNodePrivate() (qdom.cpp:1496)  
==15093==    by 0x62252D9: QDomElementPrivate::~QDomElementPrivate()
(qdom.cpp:4433)                                                                 
==15093==    by 0x6224118: QDomNodePrivate::~QDomNodePrivate() (qdom.cpp:1496)  
==15093==    by 0x62252D9: QDomElementPrivate::~QDomElementPrivate()
(qdom.cpp:4433)                                                                 
==15093==    by 0x6224118: QDomNodePrivate::~QDomNodePrivate() (qdom.cpp:1496)  
==15093==    by 0x6224295: QDomDocumentPrivate::~QDomDocumentPrivate()
(qdom.cpp:6202)                                                                 
==15093==    by 0x621E423: QDomNode::operator=(QDomNode const&) (qdom.cpp:2062) 
==15093==    by 0x65F4322:
KDEPrivate::KEditToolBarWidget::rebuildKXMLGUIClients() (kedittoolbar.cpp:806)  
==15093==    by 0x65F5724: KDEPrivate::KEditToolBarWidget::save()
(kedittoolbar.cpp:770)                                                          
==15093==                                                                       
==15093== Invalid read of size 8                                                
==15093==    at 0x800AC74: QMenuPrivate::activateAction(QAction*,
QAction::ActionEvent, bool) (qpointer.h:68)                                     
==15093==    by 0x67536AD: KMenu::mouseReleaseEvent(QMouseEvent*)
(kmenu.cpp:456)                                                                 
==15093==    by 0x7C6EFDF: QWidget::event(QEvent*) (qwidget.cpp:7554)           
==15093==    by 0x800D42A: QMenu::event(QEvent*) (qmenu.cpp:2353)               
==15093==    by 0x7C2057B: QApplicationPrivate::notify_helper(QObject*,
QEvent*) (qapplication.cpp:4065)                                                
==15093==    by 0x7C27690: QApplication::notify(QObject*, QEvent*)
(qapplication.cpp:3767)                                                         
==15093==    by 0x6681965: KApplication::notify(QObject*, QEvent*)
(kapplication.cpp:302)                                                          
==15093==    by 0x752573B: QCoreApplication::notifyInternal(QObject*, QEvent*)
(qcoreapplication.cpp:610)                                                      
==15093==    by 0x7C26F5F: QApplicationPrivate::sendMouseEvent(QWidget*,
QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&)
(qcoreapplication.h:216)
==15093==    by 0x7C8D30D: QETWidget::translateMouseEvent(_XEvent const*)
(qapplication_x11.cpp:4343)                                                     
==15093==    by 0x7C8BBE8: QApplication::x11ProcessEvent(_XEvent*)
(qapplication_x11.cpp:3550)                                                     
==15093==    by 0x7CB3B1B: x11EventSourceDispatch(_GSource*, int (*)(void*),
void*) (qguieventdispatcher_glib.cpp:146)                                       
==15093==  Address 0xefbf548 is 8 bytes after a block of size 40 free'd         
==15093==    at 0x4C2210F: operator delete(void*) (in
/usr/lib/valgrind/amd64-linux/vgpreload_memcheck.so)                            
==15093==    by 0x6222C9B: QDomNamedNodeMapPrivate::clearMap() (qhash.h:577)    
==15093==    by 0x6222D4C: QDomNamedNodeMapPrivate::~QDomNamedNodeMapPrivate()
(qdom.cpp:3058)                                                                 
==15093==    by 0x62252C9: QDomElementPrivate::~QDomElementPrivate()
(qdom.cpp:4432)                                                                 
==15093==    by 0x6224118: QDomNodePrivate::~QDomNodePrivate() (qdom.cpp:1496)  
==15093==    by 0x62252D9: QDomElementPrivate::~QDomElementPrivate()
(qdom.cpp:4433)                                                                 
==15093==    by 0x6224118: QDomNodePrivate::~QDomNodePrivate() (qdom.cpp:1496)  
==15093==    by 0x62252D9: QDomElementPrivate::~QDomElementPrivate()
(qdom.cpp:4433)                                                                 
==15093==    by 0x6224118: QDomNodePrivate::~QDomNodePrivate() (qdom.cpp:1496)  
==15093==    by 0x62252D9: QDomElementPrivate::~QDomElementPrivate()
(qdom.cpp:4433)                                                                 
==15093==    by 0x6224118: QDomNodePrivate::~QDomNodePrivate() (qdom.cpp:1496)  
==15093==    by 0x6224295: QDomDocumentPrivate::~QDomDocumentPrivate()
(qdom.cpp:6202)

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Konq-bugs mailing list
Konq-bugs@mail.kde.org
https://mail.kde.org/mailman/listinfo/konq-bugs
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic