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

List:       kdevelop-bugs
Subject:    [Bug 233824] KDevelop crashes when renaming file using context menu
From:       Jeroen van Iddekinge <iddekingej () lycos ! com>
Date:       2010-06-07 17:47:16
Message-ID: 20100607174716.18E3E4438D () immanuel ! kde ! org
[Download RAW message or body]

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





--- Comment #11 from Jeroen van Iddekinge <iddekingej lycos com>  2010-06-07 19:46:46 ---
Using valgrind  I found the following error:

==3043== Invalid read of size 8
==3043==    at 0x346CB101E0: QStandardItem::emitDataChanged()
(qstandarditemmodel.cpp:866)
==3043==    by 0x3C74413FD6: KDevelop::ProjectFileItem::setData(QVariant
const&, int) (projectmodel.cpp:442)
==3043==    by 0x20020B72:
ProjectManagerViewPlugin::renameItemFromContextMenu()
(projectmanagerviewplugin.cpp:494)
==3043==    by 0x20023193:
ProjectManagerViewPlugin::qt_metacall(QMetaObject::Call, int, void**)
(projectmanagerviewplugin.moc:126)
==3043==    by 0x346956A81E: QMetaObject::activate(QObject*, QMetaObject
const*, int, void**) (qobject.cpp:3293)
==3043==    by 0x346C5A5A91: QAction::triggered(bool) (moc_qaction.cpp:263)
==3043==    by 0x346C5A71CA: QAction::activate(QAction::ActionEvent)
(qaction.cpp:1255)
==3043==    by 0x346C9AA504:
QMenuPrivate::activateCausedStack(QList<QPointer<QWidget> > const&, QAction*,
QAction::ActionEvent, bool) (qmenu.cpp:1011)
==3043==    by 0x346C9AF8F9: QMenuPrivate::activateAction(QAction*,
QAction::ActionEvent, bool) (qmenu.cpp:1103)
==3043==    by 0x32A28D045D: KMenu::mouseReleaseEvent(QMouseEvent*)
(kmenu.cpp:471)
==3043==    by 0x346C5F5AB9: QWidget::event(QEvent*) (qwidget.cpp:7998)
==3043==    by 0x346C9B18BA: QMenu::event(QEvent*) (qmenu.cpp:2414)
==3043==  Address 0x121b7408 is 8 bytes inside a block of size 24 free'd
==3043==    at 0x4A04A84: operator delete(void*) (vg_replace_malloc.c:346)
==3043==    by 0x346CB13FF0: QStandardItem::removeRows(int, int)
(qstandarditemmodel.cpp:1625)
==3043==    by 0x15012EF8:
CustomMakeTreeSynchronizer::filesDeleted(QList<KDevelop::ProjectFileItem*>
const&, KDevelop::ProjectFolderItem*) (custommaketreesynchronizer.cpp:98)
==3043==    by 0x15014976:
CustomMakeTreeSynchronizer::qt_metacall(QMetaObject::Call, int, void**)
(custommaketreesynchronizer.moc:87)
==3043==    by 0x346956A81E: QMetaObject::activate(QObject*, QMetaObject
const*, int, void**) (qobject.cpp:3293)
==3043==    by 0x150107E6:
ProjectFileSystemWatcher::filesDeleted(QList<KDevelop::ProjectFileItem*>
const&, KDevelop::ProjectFolderItem*) (projectfilesystemwatcher.moc:127)
==3043==    by 0x1501198D:
ProjectFileSystemWatcher::slotDirChangedInternal(QString const&,
KDevelop::ProjectFolderItem*) (projectfilesystemwatcher.cpp:219)
==3043==    by 0x15012287:
ProjectFileSystemWatcher::qt_metacall(QMetaObject::Call, int, void**)
(projectfilesystemwatcher.moc:99)
==3043==    by 0x346956A81E: QMetaObject::activate(QObject*, QMetaObject
const*, int, void**) (qobject.cpp:3293)
==3043==    by 0x346952D074: QFileSystemWatcher::directoryChanged(QString
const&) (moc_qfilesystemwatcher.cpp:102)
==3043==    by 0x346952D91A: QFileSystemWatcher::qt_metacall(QMetaObject::Call,
int, void**) (moc_qfilesystemwatcher.cpp:83)
==3043==    by 0x3469566D10: QObject::event(QEvent*) (qobject.cpp:1248)


As far I can see the cause of the crash is:
The ide is updated after a file rename but the ProjectFileItem is allready
deleted by QFileSystemWatcher

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

_______________________________________________
KDevelop-bugs mailing list
KDevelop-bugs@kdevelop.org
https://barney.cs.uni-potsdam.de/mailman/listinfo/kdevelop-bugs
[prev in list] [next in list] [prev in thread] [next in thread] 

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