Details
-
Bug
-
Resolution: Done
-
P2: Important
-
Qt Creator 4.5.0
-
Windows 7 + Windows 10, MinGW 5.3.0
-
1772808592bee4ba781f20915aacf4a859f02c25
Description
When attaching to a MinGW built application and then debugging it, it can cause a crash when trying to do something with the debugger. For instance setting a breakpoint, or interupting can cause it to crash.
The debugger log before the crash is attached, and the stack trace is as follows:
> Debuggerd4.dll!Debugger::Internal::GdbEngine::interruptInferior() Line 762 C++ Debuggerd4.dll!Debugger::Internal::DebuggerEngine::requestInterruptInferior() Line 1268 C++ Debuggerd4.dll!Debugger::Internal::DebuggerPluginPrivate::handleExecInterrupt() Line 784 C++ Debuggerd4.dll!QtPrivate::FunctorCall<QtPrivate::IndexesList<>,QtPrivate::List<>,void,void (__cdecl Debugger::Internal::DebuggerPluginPrivate::*)(void) __ptr64>::call(void(Debugger::Internal::DebuggerPluginPrivate::*)() f, Debugger::Internal::DebuggerPluginPrivate * o, void * * arg) Line 136 C++ Debuggerd4.dll!QtPrivate::FunctionPointer<void (__cdecl Debugger::Internal::DebuggerPluginPrivate::*)(void) __ptr64>::call<QtPrivate::List<>,void>(void(Debugger::Internal::DebuggerPluginPrivate::*)() f, Debugger::Internal::DebuggerPluginPrivate * o, void * * arg) Line 170 C++ Debuggerd4.dll!QtPrivate::QSlotObject<void (__cdecl Debugger::Internal::DebuggerPluginPrivate::*)(void) __ptr64,QtPrivate::List<>,void>::impl(int which, QtPrivate::QSlotObjectBase * this_, QObject * r, void * * a, bool * ret) Line 399 C++ Qt5Cored.dll!QtPrivate::QSlotObjectBase::call(QObject * r, void * * a) Line 378 C++ Qt5Cored.dll!QMetaObject::activate(QObject * sender, int signalOffset, int local_signal_index, void * * argv) Line 3754 C++ Qt5Cored.dll!QMetaObject::activate(QObject * sender, const QMetaObject * m, int local_signal_index, void * * argv) Line 3629 C++ Qt5Widgetsd.dll!QAction::triggered(bool _t1) Line 377 C++ Utilsd4.dll!QtPrivate::FunctorCall<QtPrivate::IndexesList<0>,QtPrivate::List<bool>,void,void (__cdecl QAction::*)(bool) __ptr64>::call(void(QAction::*)(bool) f, QAction * o, void * * arg) Line 136 C++ Utilsd4.dll!QtPrivate::FunctionPointer<void (__cdecl QAction::*)(bool) __ptr64>::call<QtPrivate::List<bool>,void>(void(QAction::*)(bool) f, QAction * o, void * * arg) Line 170 C++ Utilsd4.dll!QtPrivate::QSlotObject<void (__cdecl QAction::*)(bool) __ptr64,QtPrivate::List<bool>,void>::impl(int which, QtPrivate::QSlotObjectBase * this_, QObject * r, void * * a, bool * ret) Line 399 C++ Qt5Cored.dll!QtPrivate::QSlotObjectBase::call(QObject * r, void * * a) Line 378 C++ Qt5Cored.dll!QMetaObject::activate(QObject * sender, int signalOffset, int local_signal_index, void * * argv) Line 3754 C++ Qt5Cored.dll!QMetaObject::activate(QObject * sender, const QMetaObject * m, int local_signal_index, void * * argv) Line 3629 C++ Qt5Widgetsd.dll!QAction::triggered(bool _t1) Line 377 C++ Utilsd4.dll!QtPrivate::FunctorCall<QtPrivate::IndexesList<0>,QtPrivate::List<bool>,void,void (__cdecl QAction::*)(bool) __ptr64>::call(void(QAction::*)(bool) f, QAction * o, void * * arg) Line 136 C++ Utilsd4.dll!QtPrivate::FunctionPointer<void (__cdecl QAction::*)(bool) __ptr64>::call<QtPrivate::List<bool>,void>(void(QAction::*)(bool) f, QAction * o, void * * arg) Line 170 C++ Utilsd4.dll!QtPrivate::QSlotObject<void (__cdecl QAction::*)(bool) __ptr64,QtPrivate::List<bool>,void>::impl(int which, QtPrivate::QSlotObjectBase * this_, QObject * r, void * * a, bool * ret) Line 399 C++ Qt5Cored.dll!QtPrivate::QSlotObjectBase::call(QObject * r, void * * a) Line 378 C++ Qt5Cored.dll!QMetaObject::activate(QObject * sender, int signalOffset, int local_signal_index, void * * argv) Line 3754 C++ Qt5Cored.dll!QMetaObject::activate(QObject * sender, const QMetaObject * m, int local_signal_index, void * * argv) Line 3629 C++ Qt5Widgetsd.dll!QAction::triggered(bool _t1) Line 377 C++ Qt5Widgetsd.dll!QAction::activate(QAction::ActionEvent event) Line 1168 C++ Qt5Widgetsd.dll!QAction::trigger() Line 187 C++ Qt5Widgetsd.dll!QToolButton::nextCheckState() Line 968 C++ Qt5Widgetsd.dll!QAbstractButtonPrivate::click() Line 398 C++ Qt5Widgetsd.dll!QAbstractButton::mouseReleaseEvent(QMouseEvent * e) Line 1012 C++ Qt5Widgetsd.dll!QToolButton::mouseReleaseEvent(QMouseEvent * e) Line 621 C++ Qt5Widgetsd.dll!QWidget::event(QEvent * event) Line 8818 C++ Qt5Widgetsd.dll!QAbstractButton::event(QEvent * e) Line 969 C++ Qt5Widgetsd.dll!QToolButton::event(QEvent * event) Line 984 C++ Qt5Widgetsd.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3732 C++ Qt5Widgetsd.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 3208 C++ Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1044 C++ Qt5Cored.dll!QCoreApplication::sendSpontaneousEvent(QObject * receiver, QEvent * event) Line 237 C++ Qt5Widgetsd.dll!QApplicationPrivate::sendMouseEvent(QWidget * receiver, QMouseEvent * event, QWidget * alienWidget, QWidget * nativeWidget, QWidget * * buttonDown, QPointer<QWidget> & lastMouseReceiver, bool spontaneous) Line 2709 C++ Qt5Widgetsd.dll!QWidgetWindow::handleMouseEvent(QMouseEvent * event) Line 656 C++ Qt5Widgetsd.dll!QWidgetWindow::event(QEvent * event) Line 274 C++ Qt5Widgetsd.dll!QApplicationPrivate::notify_helper(QObject * receiver, QEvent * e) Line 3732 C++ Qt5Widgetsd.dll!QApplication::notify(QObject * receiver, QEvent * e) Line 3104 C++ Qt5Cored.dll!QCoreApplication::notifyInternal2(QObject * receiver, QEvent * event) Line 1044 C++ Qt5Cored.dll!QCoreApplication::sendSpontaneousEvent(QObject * receiver, QEvent * event) Line 237 C++ Qt5Guid.dll!QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent * e) Line 1958 C++ Qt5Guid.dll!QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent * e) Line 1742 C++ Qt5Guid.dll!QWindowSystemInterface::sendWindowSystemEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 982 C++ qwindowsd.dll!000007fed4650942() Unknown Qt5Cored.dll!qt_internal_proc(HWND__ * hwnd, unsigned int message, unsigned __int64 wp, __int64 lp) Line 239 C++ [External Code] Qt5Cored.dll!QEventDispatcherWin32::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 630 C++ qwindowsd.dll!000007fed46508f4() Unknown Qt5Cored.dll!QEventLoop::processEvents(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 135 C++ Qt5Cored.dll!QEventLoop::exec(QFlags<enum QEventLoop::ProcessEventsFlag> flags) Line 212 C++ Qt5Cored.dll!QCoreApplication::exec() Line 1332 C++ Qt5Guid.dll!QGuiApplication::exec() Line 1688 C++ Qt5Widgetsd.dll!QApplication::exec() Line 2918 C++ qtcreator.exe!main(int argc, char * * argv) Line 537 C++ qtcreator.exe!WinMain(HINSTANCE__ * __formal, HINSTANCE__ * __formal, char * __formal, int __formal) Line 104 C++ [External Code]