Bug 439103 - Discover crashed searching for DICOM
Summary: Discover crashed searching for DICOM
Status: ASSIGNED
Alias: None
Product: Discover
Classification: Applications
Component: discover (show other bugs)
Version: 5.22.1
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Dan Leinir Turthra Jensen
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2021-06-24 08:11 UTC by Christopher Yeleighton
Modified: 2021-07-07 14:46 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christopher Yeleighton 2021-06-24 08:11:00 UTC
Application: plasma-discover (5.22.1)

Qt Version: 5.15.2
Frameworks Version: 5.83.0
Operating System: Linux 5.12.12-1-default x86_64
Windowing System: X11
Drkonqi Version: 5.22.1
Distribution: openSUSE Tumbleweed

-- Information about the crash:
- What I was doing when the application crashed:
I told Discover to search for DICOM.  It ran for some time and then crashed.

The reporter is unsure if this crash is reproducible.

-- Backtrace:
Application: Odkrywca (plasma-discover), signal: Segmentation fault
Content of s_kcrashErrorMessage: [Current thread is 1 (Thread 0x7f05c7fae9c0 (LWP 7743))]
[KCrash Handler]
#6  0x00007f058ff9c6fd in KNSCore::Engine::setSearchTerm (this=0x9ff11730, searchString=...) at /usr/src/debug/knewstuff-5.83.0-1.1.x86_64/src/core/engine.cpp:597
#7  0x00007f0598012ed7 in operator() (__closure=0x55f09f6ff920) at /usr/src/debug/discover-5.22.1-1.1.x86_64/libdiscover/backends/KNSBackend/KNSBackend.cpp:612
#8  QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KNSBackend::searchStream(ResultsStream*, const QString&)::<lambda()> >::call (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:146
#9  QtPrivate::Functor<KNSBackend::searchStream(ResultsStream*, const QString&)::<lambda()>, 0>::call<QtPrivate::List<>, void> (arg=<optimized out>, f=...) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:256
#10 QtPrivate::QFunctorSlotObject<KNSBackend::searchStream(ResultsStream*, const QString&)::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=0x55f09f6ff910, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:443
#11 0x00007f05cb3dd09e in QObject::event (this=0x55f09def6340, e=0x55f09e6a5330) at kernel/qobject.cpp:1314
#12 0x00007f05cc4a5a5f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55f09def6340, e=0x55f09e6a5330) at kernel/qapplication.cpp:3632
#13 0x00007f05cb3b0aaa in QCoreApplication::notifyInternal2 (receiver=0x55f09def6340, event=0x55f09e6a5330) at kernel/qcoreapplication.cpp:1063
#14 0x00007f05cb3b3af7 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x55f09d3d1780) at kernel/qcoreapplication.cpp:1817
#15 0x00007f05cb408a73 in postEventSourceDispatch (s=s@entry=0x55f09d4be0c0) at kernel/qeventdispatcher_glib.cpp:277
#16 0x00007f05c97cf80f in g_main_dispatch (context=0x7f05c0005000) at ../glib/gmain.c:3337
#17 g_main_context_dispatch (context=0x7f05c0005000) at ../glib/gmain.c:4055
#18 0x00007f05c97cfb98 in g_main_context_iterate (context=context@entry=0x7f05c0005000, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4131
#19 0x00007f05c97cfc4f in g_main_context_iteration (context=0x7f05c0005000, may_block=1) at ../glib/gmain.c:4196
#20 0x00007f05cb4080f4 in QEventDispatcherGlib::processEvents (this=0x55f09d4c0510, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#21 0x00007f05cb3af4bb in QEventLoop::exec (this=this@entry=0x7ffde2d81f20, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#22 0x00007f05cb3b7790 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#23 0x00007f05cb80e1fc in QGuiApplication::exec () at kernel/qguiapplication.cpp:1867
#24 0x00007f05cc4a59d5 in QApplication::exec () at kernel/qapplication.cpp:2824
#25 0x000055f09d01df90 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/discover-5.22.1-1.1.x86_64/discover/main.cpp:196
[Inferior 1 (process 7743) detached]

Possible duplicates by query: bug 435992, bug 434974, bug 434725, bug 434205, bug 433252.

Reported using DrKonqi
Comment 1 Christopher Yeleighton 2021-06-24 08:53:59 UTC
Additionally, when it does not crash, it returns GNOME Terminal, which seems completely irrelevant to the query.
Comment 2 Bug Janitor Service 2021-07-07 10:19:39 UTC
A possibly relevant merge request was started @ https://invent.kde.org/plasma/discover/-/merge_requests/144
Comment 3 Dan Leinir Turthra Jensen 2021-07-07 14:10:01 UTC
Trying to work out why this would crash (and that's what the linked patch aims to solve).

As to the search for DICOM returning a hit on GNOME Terminal, i can confirm, and also report that it's happening due to a partial match on the keywords in the appstream data, which are all in a long list, and translated to a bunch of different languages. There's not a whole lot we (or indeed the appstream folks, or the gnome terminal developers who supply the data to appstream) can reasonably do about that (this is what freetext searching is kind of supposed to do, even if it might seem a little odd). Thanks for the report, though :)