Bug 376538 - crash when searching for "recordmydesktop"
Summary: crash when searching for "recordmydesktop"
Status: RESOLVED FIXED
Alias: None
Product: Discover
Classification: Applications
Component: discover (show other bugs)
Version: 5.9.2
Platform: Neon Linux
: NOR normal
Target Milestone: ---
Assignee: Aleix Pol
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-02-16 09:09 UTC by Pascal d'Hermilly
Modified: 2017-06-07 16:10 UTC (History)
0 users

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 Pascal d'Hermilly 2017-02-16 09:09:25 UTC
Discover crashes when I start searching for a program recordmydesktop (I crashes before I finish the word)

Since KDE Neon does not provide any way to install the right debug packages there backtrace is bad.
The trace is manually copied in due to the crash handler does not allow you to report without a perfect trace.


Application: Discover (plasma-discover), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f536d7968c0 (LWP 10135))]

Thread 7 (Thread 0x7f53357fa700 (LWP 10149)):
#0  0x00007f5369aceb5d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f5364ea738c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5364ea749c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f536a6f775b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f536a6a20ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f536a4d1f64 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f536a4d6b48 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f5366f626ba in start_thread (arg=0x7f53357fa700) at pthread_create.c:333
#8  0x00007f5369ada82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7f533d707700 (LWP 10143)):
#0  0x00007f5369aceb5d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f5364ea738c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5364ea749c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f536a6f775b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f536a6a20ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f536a4d1f64 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f536a4d6b48 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f5366f626ba in start_thread (arg=0x7f533d707700) at pthread_create.c:333
#8  0x00007f5369ada82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7f535126a700 (LWP 10140)):
#0  0x00007f5369aceb5d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f5364ea738c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5364ea749c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f536a6f775b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f536a6a20ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f536a4d1f64 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f536ce17fc6 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Quick.so.5
#7  0x00007f536a4d6b48 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f5366f626ba in start_thread (arg=0x7f535126a700) at pthread_create.c:333
#9  0x00007f5369ada82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7f5352957700 (LWP 10138)):
#0  0x00007f5369aceb5d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f5364ea738c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5364ea749c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f536a6f775b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007f536a6a20ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f536a4d1f64 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f536ae49bf5 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007f536a4d6b48 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f5366f626ba in start_thread (arg=0x7f5352957700) at pthread_create.c:333
#9  0x00007f5369ada82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f5353b68700 (LWP 10137)):
#0  0x00007f5364eeba79 in g_mutex_lock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f5364ea6b41 in g_main_context_query () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f5364ea7307 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f5364ea749c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f536a6f775b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f536a6a20ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007f536a4d1f64 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007f536d8db735 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#8  0x00007f536a4d6b48 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f5366f626ba in start_thread (arg=0x7f5353b68700) at pthread_create.c:333
#10 0x00007f5369ada82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f535c13d700 (LWP 10136)):
#0  0x00007f5369aceb5d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f5364a3cc62 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f5364a3e8d7 in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f535e695d79 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#4  0x00007f536a4d6b48 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007f5366f626ba in start_thread (arg=0x7f535c13d700) at pthread_create.c:333
#6  0x00007f5369ada82d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f536d7968c0 (LWP 10135)):
[KCrash Handler]
#6  0x00007f536adb7432 in QQmlData::isSignalConnected(QAbstractDeclarativeData*, QObject const*, int) () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007f536a6ce87a in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007f536caf2482 in ResultsStream::resourcesFound(QVector<AbstractResource*> const&) () from /usr/lib/x86_64-linux-gnu/plasma-discover/libDiscoverCommon.so
#9  0x00007f533f699f4c in ?? () from /usr/lib/x86_64-linux-gnu/qt5/plugins/discover/packagekit-backend.so
#10 0x00007f536a6cf1f6 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#11 0x00007f533f45f5ff in PackageKit::Transaction::finished(PackageKit::Transaction::Exit, unsigned int) () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#12 0x00007f533f46489d in PackageKit::TransactionPrivate::finished(unsigned int, unsigned int) () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#13 0x00007f533f464b70 in PackageKit::TransactionPrivate::daemonQuit() () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#14 0x00007f533f461da9 in ?? () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#15 0x00007f536a6cee89 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#16 0x00007f533f45d85e in PackageKit::DaemonPrivate::serviceOwnerChanged(QString const&, QString const&, QString const&) () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#17 0x00007f533f4579d8 in ?? () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#18 0x00007f536a6cee89 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#19 0x00007f536d9340df in QDBusServiceWatcher::serviceOwnerChanged(QString const&, QString const&, QString const&) () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#20 0x00007f536d93418f in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#21 0x00007f536d93470f in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#22 0x00007f536d934ae0 in QDBusServiceWatcher::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#23 0x00007f536d8e7923 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#24 0x00007f536a6cfd99 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#25 0x00007f536b607ecc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#26 0x00007f536b60f8c6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007f536a6a40c8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#28 0x00007f536a6a678b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#29 0x00007f536a6f7333 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x00007f5364ea7197 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007f5364ea73f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f5364ea749c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007f536a6f773f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#34 0x00007f536a6a20ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#35 0x00007f536a6aa6cc in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#36 0x000000000040d601 in ?? ()
#37 0x00007f53699f4830 in __libc_start_main (main=0x40cee0, argc=1, argv=0x7ffdabbac6d8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffdabbac6c8) at ../csu/libc-start.c:291
#38 0x000000000040d859 in _start ()
Comment 1 Aleix Pol 2017-02-16 13:24:47 UTC
Proper backtrace. Cannot reproduce on my build, only on Neon.

Thread 1 (Thread 0x7fe4c335f8c0 (LWP 5771)):
[KCrash Handler]
#6  0x00007fe4c0294841 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#7  0x00007fe4c26b8872 in ResultsStream::resourcesFound (this=<optimized out>, _t1=...) at /workspace/build/obj-x86_64-linux-gnu/libdiscover/moc_AbstractResourcesBackend.cpp:140
#8  0x00007fe499250edc in PackageKitBackend::<lambda()>::operator() (__closure=0x618b240) at /workspace/build/libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp:418
#9  QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, PackageKitBackend::search(const AbstractResourcesBackend::Filters&)::<lambda()> >::call (arg=<optimized out>, f=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:135
#10 QtPrivate::Functor<PackageKitBackend::search(const AbstractResourcesBackend::Filters&)::<lambda()>, 0>::call<QtPrivate::List<>, void> (arg=<optimized out>, f=...) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs_impl.h:192
#11 QtPrivate::QFunctorSlotObject<PackageKitBackend::search(const AbstractResourcesBackend::Filters&)::<lambda()>, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase *, QObject *, void **, bool *) (which=<optimized out>, this_=0x618b230, r=<optimized out>, a=<optimized out>, ret=<optimized out>) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject_impl.h:169
#12 0x00007fe4c02951f6 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007fe4990165ff in PackageKit::Transaction::finished(PackageKit::Transaction::Exit, unsigned int) () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#14 0x00007fe49901b89d in PackageKit::TransactionPrivate::finished(unsigned int, unsigned int) () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#15 0x00007fe49901bb70 in PackageKit::TransactionPrivate::daemonQuit() () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#16 0x00007fe499018da9 in ?? () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#17 0x00007fe4c0294e89 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#18 0x00007fe49901485e in PackageKit::DaemonPrivate::serviceOwnerChanged(QString const&, QString const&, QString const&) () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#19 0x00007fe49900e9d8 in ?? () from /usr/lib/x86_64-linux-gnu/libpackagekitqt5.so.0
#20 0x00007fe4c0294e89 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#21 0x00007fe4c34fd0df in QDBusServiceWatcher::serviceOwnerChanged(QString const&, QString const&, QString const&) () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#22 0x00007fe4c34fd18f in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#23 0x00007fe4c34fd70f in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#24 0x00007fe4c34fdae0 in QDBusServiceWatcher::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#25 0x00007fe4c34b0923 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#26 0x00007fe4c0295d99 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#27 0x00007fe4c11cdecc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007fe4c11d58c6 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#29 0x00007fe4c026a0c8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x00007fe4c026c78b in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#31 0x00007fe4c02bd333 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#32 0x00007fe4baa71197 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007fe4baa713f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007fe4baa7149c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007fe4c02bd73f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#36 0x00007fe4c02680ba in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#37 0x00007fe4c02706cc in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#38 0x000000000040d601 in ?? ()
#39 0x00007fe4bf5ba830 in __libc_start_main (main=0x40cee0, argc=1, argv=0x7ffdc1fe0868, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffdc1fe0858) at ../csu/libc-start.c:291
#40 0x000000000040d859 in _start ()
Comment 2 Aleix Pol 2017-06-07 16:10:08 UTC
Git commit 64c8778d4cd5180dfa13dd75fed808de9271cedc by Aleix Pol.
Committed on 07/06/2017 at 16:08.
Pushed by apol into branch 'Plasma/5.10'.

Make the PackageKit backend more resistant to crashes in PackageKit

Only report searches' results if they're successful

M  +7    -5    libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp

https://commits.kde.org/discover/64c8778d4cd5180dfa13dd75fed808de9271cedc