| Summary: | Build Directory change is ignored | ||
|---|---|---|---|
| Product: | [Applications] kdevelop | Reporter: | Aleksey Midenkov <midenok+kdebugs> |
| Component: | BuildSystem: Custom BuildSystems | Assignee: | kdevelop-bugs-null |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | coopht |
| Priority: | NOR | ||
| Version First Reported In: | 4.6.0 | ||
| Target Milestone: | --- | ||
| Platform: | unspecified | ||
| OS: | Linux | ||
| Latest Commit: | http://commits.kde.org/kdevelop/b79b903762afde553bed0daa06bde19bf42f7298 | Version Fixed/Implemented In: | |
| Sentry Crash Report: | |||
|
Description
Aleksey Midenkov
2014-05-28 13:38:52 UTC
I confirm it. I'm going to fix it While your patch fixes the issue with the build directory, I'm now getting a crash when I reopen the Configuration dialog a second time. Sigh.
Trace:
=================================================================
==6091==ERROR: AddressSanitizer: heap-use-after-free on address 0x611001ccded8 at pc 0x7f81def8a6a2 bp 0x7ffd71abd790 sp 0x7ffd71abd788
READ of size 1 at 0x611001ccded8 thread T0
#0 0x7f81def8a6a1 in ConfigWidget::setTool(CustomBuildSystemTool const&) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:85:40
#1 0x7f81def88690 in ConfigWidget::changeAction(int) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:100:9
#2 0x7f81def89e8e in ConfigWidget::loadConfig(CustomBuildSystemConfig) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:70:5
#3 0x7f81def9284f in CustomBuildSystemConfigWidget::changeCurrentConfig(int) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/custombuildsystemconfigwidget.cpp:164:5
#4 0x7f81def95e09 in CustomBuildSystemConfigWidget::loadFrom(KConfig*) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/custombuildsystemconfigwidget.cpp:111:5
#5 0x7f81def9b83c in CustomBuildSystemKCModule::reset() /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/kcm_custombuildsystem.cpp:47:5
#6 0x7f821b73fa4a in KDevelop::ConfigDialog::addConfigPageInternal(KPageWidgetItem*, KDevelop::ConfigPage*) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/configdialog.cpp:173:5
#7 0x7f821b73c33f in KDevelop::ConfigDialog::addConfigPage(KDevelop::ConfigPage*, KDevelop::ConfigPage*) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/configdialog.cpp:157:9
#8 0x7f821b73ab3d in KDevelop::ConfigDialog::ConfigDialog(QVector<KDevelop::ConfigPage*> const&, QWidget*, QFlags<Qt::WindowType>) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/configdialog.cpp:51:9
#9 0x7f821b2e698f in KDevelop::ProjectControllerPrivate::projectConfig(QObject*) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/projectcontroller.cpp:149:32
#10 0x7f821b2be080 in KDevelop::ProjectController::configureProject(KDevelop::IProject*) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/projectcontroller.cpp:974:5
#11 0x7f81eb33bc3b in ProjectTreeView::openProjectConfig() /home/kfunk/devel/src/kf5/kdevplatform-stable/plugins/projectmanagerview/projecttreeview.cpp:368:9
#12 0x7f81eb34df5d in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (ProjectTreeView::*)()>::call(void (ProjectTreeView::*)(), ProjectTreeView*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:501:13
#13 0x7f81eb34dae1 in void QtPrivate::FunctionPointer<void (ProjectTreeView::*)()>::call<QtPrivate::List<>, void>(void (ProjectTreeView::*)(), ProjectTreeView*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:520:13
#14 0x7f81eb34d20b in QtPrivate::QSlotObject<void (ProjectTreeView::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:143:17
#15 0x7f8215a44e1e in QMetaObject::activate(QObject*, int, int, void**) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2b4e1e)
#16 0x7f82162ff411 in QAction::triggered(bool) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x151411)
#17 0x7f8216301897 in QAction::activate(QAction::ActionEvent) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x153897)
#18 0x7f8216483df1 (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x2d5df1)
#19 0x7f821648a08b (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x2dc08b)
#20 0x7f821648dfff in QMenu::mouseReleaseEvent(QMouseEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x2dffff)
#21 0x7f821634bf87 in QWidget::event(QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x19df87)
#22 0x7f821648ea52 in QMenu::event(QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x2e0a52)
#23 0x7f821630905b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15b05b)
#24 0x7f821630ec18 in QApplication::notify(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x160c18)
#25 0x7f8215a165ba in QCoreApplication::notifyInternal(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2865ba)
#26 0x7f821630db31 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15fb31)
#27 0x7f82163668dc (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1b88dc)
#28 0x7f8216368b3a (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1bab3a)
#29 0x7f821630905b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15b05b)
#30 0x7f821630e515 in QApplication::notify(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x160515)
#31 0x7f8215a165ba in QCoreApplication::notifyInternal(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2865ba)
#32 0x7f8215d58520 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0xf2520)
#33 0x7f8215d5a1e4 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0xf41e4)
#34 0x7f8215d3df37 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0xd7f37)
#35 0x7f81fda81d6f (/usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5+0x6ad6f)
#36 0x7f820b241126 in g_main_context_dispatch (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4a126)
#37 0x7f820b24137f (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4a37f)
#38 0x7f820b24142b in g_main_context_iteration (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4a42b)
#39 0x7f8215a6ca4e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2dca4e)
#40 0x7f8215a13d79 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x283d79)
#41 0x7f8216488ddf in QMenu::exec(QPoint const&, QAction*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x2daddf)
#42 0x7f81eb33018d in ProjectTreeView::popupContextMenu(QPoint const&) /home/kfunk/devel/src/kf5/kdevplatform-stable/plugins/projectmanagerview/projecttreeview.cpp:359:9
#43 0x7f81eb35d0d4 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QPoint const&>, void, void (ProjectTreeView::*)(QPoint const&)>::call(void (ProjectTreeView::*)(QPoint const&), ProjectTreeView*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:501:14
#44 0x7f81eb35cbf1 in void QtPrivate::FunctionPointer<void (ProjectTreeView::*)(QPoint const&)>::call<QtPrivate::List<QPoint const&>, void>(void (ProjectTreeView::*)(QPoint const&), ProjectTreeView*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:520:13
#45 0x7f81eb35c31b in QtPrivate::QSlotObject<void (ProjectTreeView::*)(QPoint const&), QtPrivate::List<QPoint const&>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:143:17
#46 0x7f8215a44e1e in QMetaObject::activate(QObject*, int, int, void**) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2b4e1e)
#47 0x7f8216332be4 in QWidget::customContextMenuRequested(QPoint const&) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x184be4)
#48 0x7f821634c97d in QWidget::event(QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x19e97d)
#49 0x7f821644ab2d in QFrame::event(QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x29cb2d)
#50 0x7f82165705aa in QAbstractItemView::viewportEvent(QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x3c25aa)
#51 0x7f82165af0cb in QTreeView::viewportEvent(QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x4010cb)
#52 0x7f8215a163a1 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2863a1)
#53 0x7f821630903b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15b03b)
#54 0x7f821630fea0 in QApplication::notify(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x161ea0)
#55 0x7f8215a165ba in QCoreApplication::notifyInternal(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2865ba)
#56 0x7f82163666b1 (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1b86b1)
#57 0x7f8216368b3a (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x1bab3a)
#58 0x7f821630905b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x15b05b)
#59 0x7f821630e515 in QApplication::notify(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x160515)
#60 0x7f8215a165ba in QCoreApplication::notifyInternal(QObject*, QEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2865ba)
#61 0x7f8215d58520 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0xf2520)
#62 0x7f8215d5a1e4 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0xf41e4)
#63 0x7f8215d3df37 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/x86_64-linux-gnu/libQt5Gui.so.5+0xd7f37)
#64 0x7f81fda81d6f (/usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5+0x6ad6f)
#65 0x7f820b241126 in g_main_context_dispatch (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4a126)
#66 0x7f820b24137f (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4a37f)
#67 0x7f820b24142b in g_main_context_iteration (/lib/x86_64-linux-gnu/libglib-2.0.so.0+0x4a42b)
#68 0x7f8215a6ca4e in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2dca4e)
#69 0x7f8215a13d79 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x283d79)
#70 0x7f8215a1be1b in QCoreApplication::exec() (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x28be1b)
#71 0x503869 in main /home/kfunk/devel/src/kf5/kdevelop-stable/app/main.cpp:671:12
#72 0x7f821451c9ff in __libc_start_main /build/glibc-uCRKup/glibc-2.21/csu/libc-start.c:289
#73 0x43c128 in _start (/home/kfunk/devel/install/kf5-stable/bin/kdevelop+0x43c128)
0x611001ccded8 is located 24 bytes inside of 224-byte region [0x611001ccdec0,0x611001ccdfa0)
freed by thread T0 here:
#0 0x4c2e32 in free (/home/kfunk/devel/install/kf5-stable/bin/kdevelop+0x4c2e32)
#1 0x7f81def8e6cc in QTypedArrayData<CustomBuildSystemTool>::deallocate(QArrayData*) /usr/include/x86_64-linux-gnu/qt5/QtCore/qarraydata.h:222:9
#2 0x7f81def8e6cc in QVector<CustomBuildSystemTool>::freeData(QTypedArrayData<CustomBuildSystemTool>*) /usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:492
#3 0x7f81def930ae in QVector<CustomBuildSystemTool>::~QVector() /usr/include/x86_64-linux-gnu/qt5/QtCore/qvector.h:68:46
#4 0x7f81def930ae in CustomBuildSystemConfig::~CustomBuildSystemConfig() /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/custombuildsystemconfig.h:45
#5 0x7f81def930ae in CustomBuildSystemConfigWidget::configChanged() /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/custombuildsystemconfigwidget.cpp:151
#6 0x7f81def9a5fd in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (CustomBuildSystemConfigWidget::*)()>::call(void (CustomBuildSystemConfigWidget::*)(), CustomBuildSystemConfigWidget*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:501:13
#7 0x7f81def9a5fd in void QtPrivate::FunctionPointer<void (CustomBuildSystemConfigWidget::*)()>::call<QtPrivate::List<>, void>(void (CustomBuildSystemConfigWidget::*)(), CustomBuildSystemConfigWidget*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:520
#8 0x7f81def9a5fd in QtPrivate::QSlotObject<void (CustomBuildSystemConfigWidget::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:143
#9 0x7f8215a44e1e in QMetaObject::activate(QObject*, int, int, void**) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2b4e1e)
#10 0x7f81def9d3e3 in ConfigWidget::changed() /home/kfunk/devel/build/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/moc_configwidget.cpp:153:5
#11 0x7f81def8908e in void ConfigWidget::applyChange<ConfigWidget::actionEnvironmentChanged(QString const&)::$_2>(ConfigWidget::actionEnvironmentChanged(QString const&)::$_2) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:155:10
#12 0x7f81def8908e in ConfigWidget::actionEnvironmentChanged(QString const&) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:120
#13 0x7f81def8f0dc in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QString const&>, void, void (ConfigWidget::*)(QString const&)>::call(void (ConfigWidget::*)(QString const&), ConfigWidget*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:501:14
#14 0x7f81def8f0dc in void QtPrivate::FunctionPointer<void (ConfigWidget::*)(QString const&)>::call<QtPrivate::List<QString const&>, void>(void (ConfigWidget::*)(QString const&), ConfigWidget*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:520
#15 0x7f81def8f0dc in QtPrivate::QSlotObject<void (ConfigWidget::*)(QString const&), QtPrivate::List<QString const&>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:143
#16 0x7f8215a44e1e in QMetaObject::activate(QObject*, int, int, void**) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2b4e1e)
#17 0x7f821a1cf07d in KDevelop::EnvironmentSelectionWidget::currentProfileChanged(QString const&) /home/kfunk/devel/build/kf5/kdevplatform-stable/util/moc_environmentselectionwidget.cpp:178:5
#18 0x7f821a0d5b28 in KDevelop::EnvironmentSelectionWidget::setCurrentProfile(QString const&) /home/kfunk/devel/src/kf5/kdevplatform-stable/util/environmentselectionwidget.cpp:84:10
#19 0x7f81def8a51e in ConfigWidget::setTool(CustomBuildSystemTool const&) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:84:5
#20 0x7f81def88690 in ConfigWidget::changeAction(int) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:100:9
#21 0x7f81def89e8e in ConfigWidget::loadConfig(CustomBuildSystemConfig) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:70:5
#22 0x7f81def9284f in CustomBuildSystemConfigWidget::changeCurrentConfig(int) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/custombuildsystemconfigwidget.cpp:164:5
#23 0x7f81def95e09 in CustomBuildSystemConfigWidget::loadFrom(KConfig*) /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/custombuildsystemconfigwidget.cpp:111:5
#24 0x7f81def9b83c in CustomBuildSystemKCModule::reset() /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/kcm_custombuildsystem.cpp:47:5
#25 0x7f821b73fa4a in KDevelop::ConfigDialog::addConfigPageInternal(KPageWidgetItem*, KDevelop::ConfigPage*) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/configdialog.cpp:173:5
#26 0x7f821b73c33f in KDevelop::ConfigDialog::addConfigPage(KDevelop::ConfigPage*, KDevelop::ConfigPage*) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/configdialog.cpp:157:9
#27 0x7f821b73ab3d in KDevelop::ConfigDialog::ConfigDialog(QVector<KDevelop::ConfigPage*> const&, QWidget*, QFlags<Qt::WindowType>) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/configdialog.cpp:51:9
#28 0x7f821b2e698f in KDevelop::ProjectControllerPrivate::projectConfig(QObject*) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/projectcontroller.cpp:149:32
#29 0x7f821b2be080 in KDevelop::ProjectController::configureProject(KDevelop::IProject*) /home/kfunk/devel/src/kf5/kdevplatform-stable/shell/projectcontroller.cpp:974:5
#30 0x7f81eb33bc3b in ProjectTreeView::openProjectConfig() /home/kfunk/devel/src/kf5/kdevplatform-stable/plugins/projectmanagerview/projecttreeview.cpp:368:9
#31 0x7f81eb34df5d in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (ProjectTreeView::*)()>::call(void (ProjectTreeView::*)(), ProjectTreeView*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:501:13
#32 0x7f81eb34dae1 in void QtPrivate::FunctionPointer<void (ProjectTreeView::*)()>::call<QtPrivate::List<>, void>(void (ProjectTreeView::*)(), ProjectTreeView*, void**) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:520:13
#33 0x7f81eb34d20b in QtPrivate::QSlotObject<void (ProjectTreeView::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:143:17
#34 0x7f8215a44e1e in QMetaObject::activate(QObject*, int, int, void**) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0x2b4e1e)
#35 0x7f82162ff411 in QAction::triggered(bool) (/usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5+0x151411)
previously allocated by thread T0 here:
#0 0x4c3112 in malloc (/home/kfunk/devel/install/kf5-stable/bin/kdevelop+0x4c3112)
#1 0x7f8215836e67 in QArrayData::allocate(unsigned long, unsigned long, unsigned long, QFlags<QArrayData::AllocationOption>) (/usr/lib/x86_64-linux-gnu/libQt5Core.so.5+0xa6e67)
SUMMARY: AddressSanitizer: heap-use-after-free /home/kfunk/devel/src/kf5/kdevelop-stable/projectmanagers/custom-buildsystem/configwidget.cpp:85 ConfigWidget::setTool(CustomBuildSystemTool const&)
Shadow bytes around the buggy address:
0x0c2280391b80: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd
0x0c2280391b90: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
0x0c2280391ba0: fd fd fd fd fd fd fd fa fa fa fa fa fa fa fa fa
0x0c2280391bb0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x0c2280391bc0: 00 00 00 00 00 00 00 00 00 00 00 00 fa fa fa fa
=>0x0c2280391bd0: fa fa fa fa fa fa fa fa fd fd fd[fd]fd fd fd fd
0x0c2280391be0: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
0x0c2280391bf0: fd fd fd fd fa fa fa fa fa fa fa fa fa fa fa fa
0x0c2280391c00: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd
0x0c2280391c10: fd fd fd fd fd fd fd fd fd fa fa fa fa fa fa fa
0x0c2280391c20: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Heap right redzone: fb
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack partial redzone: f4
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==6091==ABORTING
Unrelated to your patch though. Will push your patch for now. Git commit b79b903762afde553bed0daa06bde19bf42f7298 by Kevin Funk. Committed on 08/03/2016 at 23:15. Pushed by kfunk into branch '5.0'. Notify settings about build dir change. Summary: Notify settings about build dir change. Reviewers: kfunk Reviewed By: kfunk Subscribers: kdevelop-devel, coopht Projects: #kdevelop Differential Revision: https://phabricator.kde.org/D1089 M +2 -0 projectmanagers/custom-buildsystem/configwidget.cpp http://commits.kde.org/kdevelop/b79b903762afde553bed0daa06bde19bf42f7298 Git commit 5f1e4974d8fd2259425062f02635b1bc27b57495 by Kevin Funk. Committed on 16/01/2017 at 22:47. Pushed by kfunk into branch '5.0'. custom-buildsystem: Fix crash while configuring Fix crash when starting configure a custom build system managed project. FIXED-IN: 5.0.4 M +2 -1 projectmanagers/custom-buildsystem/configwidget.cpp https://commits.kde.org/kdevelop/5f1e4974d8fd2259425062f02635b1bc27b57495 |