Bug report #17663
QGIS 2.99 crash while using "search box" in qgis options dialog
Status: | Closed | ||
---|---|---|---|
Priority: | Normal | ||
Assignee: | - | ||
Category: | GUI | ||
Affected QGIS version: | master | Regression?: | No |
Operating System: | Easy fix?: | No | |
Pull Request or Patch supplied: | No | Resolution: | fixed/implemented |
Crashes QGIS or corrupts data: | Yes | Copied to github as #: | 25560 |
Description
User Feedback¶
Report Details¶
Crash ID: e01f3b4ef2ecd13878792e00b9e4ca4e44960961
Stack Trace
QMetaObject::cast : qobject_cast<QTreeView * __ptr64> qobject.h:515 QgsSearchHighlightOptionWidget::searchHighlight qgsoptionsdialogbase.cpp:443 QgsOptionsDialogBase::searchText qgsoptionsdialogbase.cpp:232 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>,QtPrivate::List<QString const & __ptr64>,void,void (__cdecl QgsOptionsDialogBase::*)(QString const & __ptr64) __ptr64>::call qobjectdefs_impl.h:136 QtPrivate::FunctionPointer<void (__cdecl QgsOptionsDialogBase::*)(QString const & __ptr64) __ptr64>::call<QtPrivate::List<QString const & __ptr64>,void> qobjectdefs_impl.h:170 QtPrivate::QSlotObject<void (__cdecl QgsOptionsDialogBase::*)(QString const & __ptr64) __ptr64,QtPrivate::List<QString const & __ptr64>,void>::impl qobject_impl.h:121 QMetaObject::activate : QLineEdit::qt_static_metacall : QMetaObject::activate : QWidgetLineControl::finishChange : QWidgetLineControl::processKeyEvent : QLineEdit::keyPressEvent : QWidget::event : QLineEdit::event : QApplicationPrivate::notify_helper : QApplication::notify : QgsApplication::notify qgsapplication.cpp:317 QCoreApplication::notifyInternal2 : QSizePolicy::QSizePolicy : QSizePolicy::QSizePolicy : QApplicationPrivate::notify_helper : QApplication::notify : QgsApplication::notify qgsapplication.cpp:317 QCoreApplication::notifyInternal2 : QGuiApplicationPrivate::processKeyEvent : QWindowSystemInterface::sendWindowSystemEvents : QEventDispatcherWin32::processEvents : TranslateMessageEx : TranslateMessage : QEventDispatcherWin32::processEvents : qt_plugin_query_metadata : QEventLoop::exec : QDialog::exec : QgisApp::showOptionsDialog qgisapp.cpp:9694 QgisApp::options qgisapp.cpp:9673 QtPrivate::FunctorCall<QtPrivate::IndexesList<>,QtPrivate::List<>,void,void (__cdecl QgisApp::*)(void) __ptr64>::call qobjectdefs_impl.h:136 QtPrivate::FunctionPointer<void (__cdecl QgisApp::*)(void) __ptr64>::call<QtPrivate::List<>,void> qobjectdefs_impl.h:170 QtPrivate::QSlotObject<void (__cdecl QgisApp::*)(void) __ptr64,QtPrivate::List<>,void>::impl qobject_impl.h:121 QMetaObject::activate : QAction::activate : QMenu::actionGeometry : QMenu::actionGeometry : QMenu::mouseReleaseEvent : QWidget::event : QMenu::event : QApplicationPrivate::notify_helper : QApplication::notify : QgsApplication::notify qgsapplication.cpp:317 QCoreApplication::notifyInternal2 : QApplicationPrivate::sendMouseEvent : QSizePolicy::QSizePolicy : QSizePolicy::QSizePolicy : QApplicationPrivate::notify_helper : QApplication::notify : QgsApplication::notify qgsapplication.cpp:317 QCoreApplication::notifyInternal2 : QGuiApplicationPrivate::processMouseEvent : QWindowSystemInterface::sendWindowSystemEvents : QEventDispatcherWin32::processEvents : TranslateMessageEx : TranslateMessage : QEventDispatcherWin32::processEvents : qt_plugin_query_metadata : QEventLoop::exec : QCoreApplication::exec : main main.cpp:1398 WinMain mainwin.cpp:128 __scrt_common_main_seh exe_common.inl:253 BaseThreadInitThunk : RtlUserThreadStart :
QGIS Info
QGIS Version: 2.99.0-Master
QGIS code revision: aa68a9faec
Compiled against Qt: 5.9.2
Running against Qt: 5.9.2
Compiled against GDAL: 2.2.3
Running against GDAL: 2.2.3
System Info
CPU Type: x86_64
Kernel Type: winnt
Kernel Version: 6.1.7601
History
#1 Updated by Alessandro Pasotti almost 7 years ago
- Status changed from Open to Feedback
I cannot reproduce in current master on Linux
#2 Updated by Patrick Dunford almost 7 years ago
I can make it happen with master fb28adf on Debian
The first search you type in works, when you delete the characters for another search, as soon as you type the first character for the new search it crashes then.
#3 Updated by Richard Duivenvoorde almost 7 years ago
Confirmed here on Debian testing:
QGIS version 2.99.0-Master QGIS code revision 3da5ab6996 Compiled against Qt 5.9.2 Running against Qt 5.9.2 Compiled against GDAL/OGR 2.2.2 Running against GDAL/OGR 2.2.2 Compiled against GEOS 3.5.1-CAPI-1.9.1 Running against GEOS 3.5.1-CAPI-1.9.1 r4246 PostgreSQL Client Version 10.1 SpatiaLite Version 4.3.0a QWT Version 6.1.2 PROJ.4 Version 493 QScintilla2 Version 2.9.3 This copy of QGIS writes debugging output.
First search for 'proxy' is fine, but then deleting one or two chars from it it crashes.
Running with gdb:
src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [104ms] Found proxy in mTypeLabel (tab: Network) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [1ms] Found proxy in label_41 (tab: Network) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [7ms] Found proxy in mAdvancedSettingsEditor (tab: Advanced) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [1465ms] Found prox in mTypeLabel (tab: Network) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [0ms] Found prox in label_41 (tab: Network) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [6ms] Found prox in mAdvancedSettingsEditor (tab: Advanced) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [6ms] Found prox in tree (tab: Processing) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [1384ms] Found pro in groupBox_11 (tab: General) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [0ms] Found pro in label_54 (tab: General) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [1ms] Found pro in cbxProjectDefaultNew (tab: General) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [0ms] Found pro in pbnProjectDefaultSetCurrent (tab: General) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [1ms] Found pro in chbAskToSaveProjectChanges (tab: General) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [0ms] Found pro in mLayerDeleteConfirmationChkBx (tab: General) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [1ms] Found pro in chbWarnOldProjectVersion (tab: General) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [0ms] Found pro in textLabel1_13 (tab: Data Sources) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [1ms] Found pro in mSimplifyDrawingAtProvider (tab: Rendering) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [2ms] Found pro in groupBox_9 (tab: Canvas & Legend) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [0ms] Found pro in label_16 (tab: CRS) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [1ms] Found pro in radPromptForProjection (tab: CRS) src/gui/qgsoptionsdialogbase.cpp: 237: (searchText) [0ms] Found pro in radUseProjectProjection (tab: CRS) Thread 1 "qgis" received signal SIGSEGV, Segmentation fault. 0x00007fffef5042d0 in QWidget::styleSheet() const () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 (gdb) bt #0 0x00007fffef5042d0 in QWidget::styleSheet() const () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #1 0x00007ffff6655488 in QgsSearchHighlightOptionWidget::reset (this=0x55555bdc9c80) at /home/richard/dev/qgis/git/qgis/src/gui/qgsoptionsdialogbase.cpp:476 #2 0x00007ffff6653d08 in QgsOptionsDialogBase::searchText (this=0x55555b3443f0, text=...) at /home/richard/dev/qgis/git/qgis/src/gui/qgsoptionsdialogbase.cpp:231 #3 0x00007ffff665808b in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QString const&>, void, void (QgsOptionsDialogBase::*)(QString const&)>::call (f= (void (QgsOptionsDialogBase::*)(QgsOptionsDialogBase * const, const QString &)) 0x7ffff6653b5e <QgsOptionsDialogBase::searchText(QString const&)>, o=0x55555b3443f0, arg=0x7fffffffaba0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:136 #4 0x00007ffff6657de1 in QtPrivate::FunctionPointer<void (QgsOptionsDialogBase::*)(QString const&)>::call<QtPrivate::List<QString const&>, void> (f= (void (QgsOptionsDialogBase::*)(QgsOptionsDialogBase * const, const QString &)) 0x7ffff6653b5e <QgsOptionsDialogBase::searchText(QString const&)>, o=0x55555b3443f0, arg=0x7fffffffaba0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:169 #5 0x00007ffff6657901 in QtPrivate::QSlotObject<void (QgsOptionsDialogBase::*)(QString const&), QtPrivate::List<QString const&>, void>::impl (which=1, this_=0x55555ba6ca50, r=0x55555b3443f0, a=0x7fffffffaba0, ret=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:120 #6 0x00007fffea6c3e6f in QMetaObject::activate(QObject*, int, int, void**) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #7 0x00007fffef61f0d2 in QLineEdit::textChanged(QString const&) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #8 0x00007fffef625509 in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #9 0x00007fffea6c3d55 in QMetaObject::activate(QObject*, int, int, void**) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #10 0x00007fffef626065 in QWidgetLineControl::textChanged(QString const&) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #11 0x00007fffef6293a1 in QWidgetLineControl::finishChange(int, bool, bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #12 0x00007fffef62c5b8 in QWidgetLineControl::processKeyEvent(QKeyEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #13 0x00007fffef61f22a in QLineEdit::keyPressEvent(QKeyEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #14 0x00007fffef51d3c7 in QWidget::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #15 0x00007fffef624d92 in QLineEdit::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #16 0x00007fffef4de59c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #17 0x00007fffef4e73a2 in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #18 0x00007ffff3f627d7 in QgsApplication::notify (this=0x7fffffffcd90, receiver=0x555556a34910, event=0x7fffffffb570) at /home/richard/dev/qgis/git/qgis/src/core/qgsapplication.cpp:317 #19 0x00007fffea695258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #20 0x00007fffef539ee5 in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #21 0x00007fffef4de59c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #22 0x00007fffef4e5e64 in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #23 0x00007ffff3f627d7 in QgsApplication::notify (this=0x7fffffffcd90, receiver=0x55555ba6fda0, event=0x7fffffffb570) at /home/richard/dev/qgis/git/qgis/src/core/qgsapplication.cpp:317 #24 0x00007fffea695258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #25 0x00007fffeaf7dcf0 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #26 0x00007fffeaf82c45 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #27 0x00007fffeaf5acab in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #28 0x00007fffcd5fbd50 in ?? () from /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #29 0x00007fffe4cb1f67 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #30 0x00007fffe4cb21a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #31 0x00007fffe4cb222c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #32 0x00007fffea6ee0ef in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #33 0x00007fffea6932aa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #34 0x00007fffef6c8007 in QDialog::exec() () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #35 0x00007ffff7003cd1 in QgisApp::showOptionsDialog (this=0x555555fba6b0, parent=0x555555fba6b0, currentPage=...) at /home/richard/dev/qgis/git/qgis/src/app/qgisapp.cpp:9804 #36 0x00007ffff7003926 in QgisApp::options (this=0x555555fba6b0) at /home/richard/dev/qgis/git/qgis/src/app/qgisapp.cpp:9783 #37 0x00007ffff7086d53 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (QgisApp::*)()>::call(void (QgisApp::*)(), QgisApp*, void**) (f=(void (QgisApp::*)(QgisApp * const)) 0x7ffff70038f6 <QgisApp::options()>, o=0x555555fba6b0, arg=0x7fffffffbcf0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:136 #38 0x00007ffff7081149 in QtPrivate::FunctionPointer<void (QgisApp::*)()>::call<QtPrivate::List<>, void>(void (QgisApp::*)(), QgisApp*, void**) (f=(void (QgisApp::*)(QgisApp * const)) 0x7ffff70038f6 <QgisApp::options()>, o=0x555555fba6b0, arg=0x7fffffffbcf0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:169 #39 0x00007ffff7075d23 in QtPrivate::QSlotObject<void (QgisApp::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x555556316590, r=0x555555fba6b0, a=0x7fffffffbcf0, ret=0x0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:120 #40 0x00007fffea6c3e6f in QMetaObject::activate(QObject*, int, int, void**) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #41 0x00007fffef4d7eb2 in QAction::triggered(bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #42 0x00007fffef4da59c in QAction::activate(QAction::ActionEvent) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #43 0x00007fffef65619c in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #44 0x00007fffef65d68b in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #45 0x00007fffef65e553 in QMenu::mouseReleaseEvent(QMouseEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #46 0x00007fffef51cb98 in QWidget::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #47 0x00007fffef66080b in QMenu::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #48 0x00007fffef4de59c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #49 0x00007fffef4e63bf in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #50 0x00007ffff3f627d7 in QgsApplication::notify (this=0x7fffffffcd90, receiver=0x555555f7e9e0, event=0x7fffffffc3e0) at /home/richard/dev/qgis/git/qgis/src/core/qgsapplication.cpp:317 #51 0x00007fffea695258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #52 0x00007fffef4e5392 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #53 0x00007fffef5375c5 in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #54 0x00007fffef539efa in ?? () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #55 0x00007fffef4de59c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #56 0x00007fffef4e5e64 in QApplication::notify(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #57 0x00007ffff3f627d7 in QgsApplication::notify (this=0x7fffffffcd90, receiver=0x55555b1a48b0, event=0x7fffffffc8b0) at /home/richard/dev/qgis/git/qgis/src/core/qgsapplication.cpp:317 #58 0x00007fffea695258 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #59 0x00007fffeaf81183 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #60 0x00007fffeaf82c65 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #61 0x00007fffeaf5acab in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 ---Type <return> to continue, or q <return> to quit--- #62 0x00007fffcd5fbd50 in ?? () from /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #63 0x00007fffe4cb1f67 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #64 0x00007fffe4cb21a0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #65 0x00007fffe4cb222c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #66 0x00007fffea6ee0ef in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #67 0x00007fffea6932aa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #68 0x00007fffea69c214 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #69 0x0000555555565eec in main (argc=1, argv=0x7fffffffe0e8) at /home/richard/dev/qgis/git/qgis/src/app/main.cpp:1401 (gdb)
#4 Updated by Mathieu Pellerin - nIRV almost 7 years ago
Jan, a fix was committed to master yesterday which hopefully has dealt with this crash. Can you confirm the crash you suffered from his gone? Thanks.
#5 Updated by Jan Lippmann almost 7 years ago
hi mathieu,
crash is gone!
thanks
#6 Updated by Mathieu Pellerin - nIRV almost 7 years ago
- Resolution set to fixed/implemented
- Status changed from Feedback to Closed