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

            Bug ID: 450518
           Summary: Crash when opening Advanced Search
           Product: digikam
           Version: unspecified
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: Searches-Advanced
          Assignee: digikam-bugs-n...@kde.org
          Reporter: kristian.hermann.k...@gmail.com
  Target Milestone: ---

SUMMARY
When opening the Advanced Search dialog, Digikam crashes for me

STEPS TO REPRODUCE
1. Start Digikam
2. Open the Advanced Search dialog

OBSERVED RESULT
Digikam crashes. 

Thread 1 "digikam" received signal SIGSEGV, Segmentation fault.
0x00007ffff4d766d2 in QObject::setObjectName(QString const&) () from
/lib/x86_64-linux-gnu/libQt5Core.so.5
(gdb) bt
#0  0x00007ffff4d766d2 in QObject::setObjectName(QString const&) () at
/lib/x86_64-linux-gnu/libQt5Core.so.5
#1  0x00007ffff7a9c7c4 in
Digikam::SearchFieldChoice::setupValueWidgets(QGridLayout*, int, int)
(this=0x55555708d330, layout=0x555556cd3370, row=3, column=3)
    at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchfields.cpp:2184
#2  0x00007ffff7a97c54 in Digikam::SearchField::setup(QGridLayout*, int)
(this=0x55555708d330, layout=0x555556cd3370, line=3)
    at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchfields.cpp:1066
#3  0x00007ffff7a84be4 in
Digikam::SearchFieldGroup::addField(Digikam::SearchField*)
(this=0x555556298fd0, field=0x55555708d330)
    at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchfieldgroup.cpp:64
#4  0x00007ffff7a7e927 in
Digikam::SearchGroup::setup(Digikam::SearchGroup::Type) (this=0x5555563e9700,
type=Digikam::SearchGroup::FirstGroup)
    at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchgroup.cpp:104
#5  0x00007ffff7a77335 in Digikam::SearchView::createSearchGroup()
(this=0x55555783c010) at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchview.cpp:280
#6  0x00007ffff7a7657d in
Digikam::AbstractSearchGroupContainer::addSearchGroup() (this=0x55555783c010)
    at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchview.cpp:63
#7  0x00007ffff7a76dd6 in Digikam::SearchView::setup() (this=0x55555783c010) at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchview.cpp:205
#8  0x00007ffff7a75378 in Digikam::SearchWindow::SearchWindow()
(this=0x5555569b0200) at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchwindow.cpp:82
#9  0x00007ffff7aae6f1 in Digikam::SearchTabHeader::searchWindow() const
(this=0x5555577d20a0)
    at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchtabheader.cpp:426
#10 0x00007ffff7aaee16 in Digikam::SearchTabHeader::newAdvancedSearch()
(this=0x5555577d20a0) at
/home/krikar/dev/kde/digikam/core/utilities/searchwindow/searchtabheader.cpp:515
#11 0x00007ffff7a723fa in
Digikam::SearchTabHeader::qt_static_metacall(QObject*, QMetaObject::Call, int,
void**)
    (_o=0x5555577d20a0, _c=QMetaObject::InvokeMetaMethod, _id=4,
_a=0x7fffffffcb60)
    at
/home/krikar/dev/kde/digikam/build/core/utilities/searchwindow/gui_searchwindow_obj_autogen/EWIEGA46WW/moc_searchtabheader.cpp:128
#12 0x00007ffff4d7d1f0 in  () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007ffff5919fb6 in QAbstractButton::clicked(bool) () at
/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#14 0x00007ffff591a1de in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#15 0x00007ffff591b6b3 in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#16 0x00007ffff591b875 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) ()
at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#17 0x00007ffff5864cf6 in QWidget::event(QEvent*) () at
/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#18 0x00007ffff59c0283 in QPushButton::event(QEvent*) () at
/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#19 0x00007ffff5821dc3 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#20 0x00007ffff582ae77 in QApplication::notify(QObject*, QEvent*) () at
/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#21 0x00007ffff4d4619a in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() at /lib/x86_64-linux-gnu/libQt5Core.so.5
#22 0x00007ffff582a0a7 in QApplicationPrivate::sendMouseEvent(QWidget*,
QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) ()
    at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#23 0x00007ffff587fed4 in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#24 0x00007ffff58831f4 in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#25 0x00007ffff5821dc3 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
() at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#26 0x00007ffff582abb8 in QApplication::notify(QObject*, QEvent*) () at
/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007ffff4d4619a in QCoreApplication::notifyInternal2(QObject*, QEvent*)
() at /lib/x86_64-linux-gnu/libQt5Core.so.5
#28 0x00007ffff512a4d8 in
QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*)
() at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#29 0x00007ffff512bb45 in
QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*)
() at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#30 0x00007ffff51037ac in
QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>)
() at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#31 0x00007fffd2ac4ffe in  () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#32 0x00007fffe592b17d in g_main_context_dispatch () at
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007fffe592b400 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0

EXPECTED RESULT
The Advanced Search dialog should be opened.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: KDE neon 5.24
KDE Plasma Version: 5.24.1
KDE Frameworks Version: 5.91.0
Qt Version: 5.15.3
Digikam built from sources (879b7a80be6525b77741df2f9afc9bbeee20fa9c)

ADDITIONAL INFORMATION
It seems to me as the label (in method SearchFieldChoice::setupValueWidgets) is
never created after setting the model.
m_comboBox->m_label is NULL when the crash happens.
Changing the setModel to setSearchModel appears to fix the crash, see patch
below.

diff --git a/core/utilities/searchwindow/searchfields.cpp
b/core/utilities/searchwindow/searchfields.cpp
index 058c08493b..677db67cd7 100644
--- a/core/utilities/searchwindow/searchfields.cpp
+++ b/core/utilities/searchwindow/searchfields.cpp
@@ -2173,7 +2173,7 @@ void SearchFieldChoice::setupValueWidgets(QGridLayout*
layout, int row, int colu
     connect(m_model, SIGNAL(checkStateChanged(QVariant,bool)),
             this, SLOT(checkStateChanged()));

-    m_comboBox->setModel(m_model);
+    m_comboBox->setSearchModel(m_model);

     // set object name for style sheet

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to