Bug 372473

Summary: discover crashes when using recent appstream-0.10.3 fixes
Product: [I don't know] kde Reporter: Rex Dieter <rdieter>
Component: generalAssignee: Unassigned bugs mailing-list <unassigned-bugs>
Status: RESOLVED UPSTREAM    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Rex Dieter 2016-11-14 15:36:52 UTC
Application: plasma-discover (5.8.3)

Qt Version: 5.6.2
Frameworks Version: 5.27.0
Operating System: Linux 4.8.6-201.fc24.x86_64 x86_64
Distribution: "Fedora release 24 (Twenty Four)"

-- Information about the crash:
- What I was doing when the application crashed:
Browsing applications, and trying to install some

It appears to be crashing in some appstream method so may not be discover's fault.

The crash can be reproduced every time.

-- Backtrace:
Application: Discover (plasma-discover), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f5c7b5cb900 (LWP 7509))]

Thread 9 (Thread 0x7f5c47bff700 (LWP 7529)):
#0  0x00007f5c85090f10 in g_main_context_prepare (context=context@entry=0x7f5c3c000990, priority=priority@entry=0x7f5c47bfeb80) at gmain.c:3424
#1  0x00007f5c8509192b in g_main_context_iterate (context=context@entry=0x7f5c3c000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3820
#2  0x00007f5c85091b1c in g_main_context_iteration (context=0x7f5c3c000990, may_block=may_block@entry=1) at gmain.c:3901
#3  0x00007f5c892e575b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5c3c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#4  0x00007f5c8929481a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5c47bfecc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:206
#5  0x00007f5c890f3353 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:500
#6  0x00007f5c890f79ba in QThreadPrivate::start(void*) (arg=0x56540a8bcfa0) at thread/qthread_unix.cpp:365
#7  0x00007f5c86a365ca in start_thread () at /lib64/libpthread.so.0
#8  0x00007f5c884eb0ed in clone () at /lib64/libc.so.6

Thread 8 (Thread 0x7f5c4f7fe700 (LWP 7519)):
#0  0x00007f5c884df56d in poll () at /lib64/libc.so.6
#1  0x00007f5c85091a06 in g_main_context_iterate (priority=<optimized out>, n_fds=1, fds=0x7f5c400010c0, timeout=<optimized out>, context=0x56540a8b3870) at gmain.c:4135
#2  0x00007f5c85091a06 in g_main_context_iterate (context=0x56540a8b3870, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3835
#3  0x00007f5c85091d92 in g_main_loop_run (loop=0x56540a8b3800) at gmain.c:4034
#4  0x00007f5c718b0e46 in gdbus_shared_thread_func (user_data=0x56540a8b3840) at gdbusprivate.c:246
#5  0x00007f5c850b7cf5 in g_thread_proxy (data=0x56540a8b54a0) at gthread.c:780
#6  0x00007f5c86a365ca in start_thread () at /lib64/libpthread.so.0
#7  0x00007f5c884eb0ed in clone () at /lib64/libc.so.6

Thread 7 (Thread 0x7f5c4ffff700 (LWP 7518)):
#0  0x00007f5c850d5a24 in g_mutex_unlock (mutex=0x56540a8b3040) at gthread-posix.c:1347
#1  0x00007f5c85091030 in g_main_context_prepare (context=context@entry=0x56540a8b3040, priority=priority@entry=0x7f5c4fffecd0) at gmain.c:3507
#2  0x00007f5c8509192b in g_main_context_iterate (context=context@entry=0x56540a8b3040, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3820
#3  0x00007f5c85091b1c in g_main_context_iteration (context=0x56540a8b3040, may_block=may_block@entry=1) at gmain.c:3901
#4  0x00007f5c85091b61 in glib_worker_main (data=<optimized out>) at gmain.c:5672
#5  0x00007f5c850b7cf5 in g_thread_proxy (data=0x56540a8b5450) at gthread.c:780
#6  0x00007f5c86a365ca in start_thread () at /lib64/libpthread.so.0
#7  0x00007f5c884eb0ed in clone () at /lib64/libc.so.6

Thread 6 (Thread 0x7f5c5bfff700 (LWP 7514)):
#0  0x00007f5c884df56d in poll () at /lib64/libc.so.6
#1  0x00007f5c85091a06 in g_main_context_iterate (priority=<optimized out>, n_fds=1, fds=0x7f5c50003070, timeout=<optimized out>, context=0x7f5c50000990) at gmain.c:4135
#2  0x00007f5c85091a06 in g_main_context_iterate (context=context@entry=0x7f5c50000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3835
#3  0x00007f5c85091b1c in g_main_context_iteration (context=0x7f5c50000990, may_block=may_block@entry=1) at gmain.c:3901
#4  0x00007f5c892e575b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5c500008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#5  0x00007f5c8929481a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5c5bffecc0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:206
#6  0x00007f5c890f3353 in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:500
#7  0x00007f5c890f79ba in QThreadPrivate::start(void*) (arg=0x7f5c54003650) at thread/qthread_unix.cpp:365
#8  0x00007f5c86a365ca in start_thread () at /lib64/libpthread.so.0
#9  0x00007f5c884eb0ed in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f5c60bd1700 (LWP 7513)):
#0  0x00007f5c850a02f2 in g_poll (__timeout=-1, __nfds=1, __fds=0x7f5c54874910) at /usr/include/bits/poll2.h:46
#1  0x00007f5c850a02f2 in g_poll (fds=0x7f5c54874910, nfds=1, timeout=-1) at gpoll.c:124
#2  0x00007f5c85091a06 in g_main_context_iterate (priority=<optimized out>, n_fds=1, fds=0x7f5c54874910, timeout=<optimized out>, context=0x7f5c54000990) at gmain.c:4135
#3  0x00007f5c85091a06 in g_main_context_iterate (context=context@entry=0x7f5c54000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3835
#4  0x00007f5c85091b1c in g_main_context_iteration (context=0x7f5c54000990, may_block=may_block@entry=1) at gmain.c:3901
#5  0x00007f5c892e575b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5c540008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#6  0x00007f5c8929481a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5c60bd0c50, flags=..., flags@entry=...) at kernel/qeventloop.cpp:206
#7  0x00007f5c890f3353 in QThread::exec() (this=this@entry=0x56540a590f10) at thread/qthread.cpp:500
#8  0x00007f5c8c3c8d56 in QQuickPixmapReader::run() (this=0x56540a590f10) at /usr/src/debug/qtdeclarative-opensource-src-5.6.2/src/quick/util/qquickpixmapcache.cpp:817
#9  0x00007f5c890f79ba in QThreadPrivate::start(void*) (arg=0x56540a590f10) at thread/qthread_unix.cpp:365
#10 0x00007f5c86a365ca in start_thread () at /lib64/libpthread.so.0
#11 0x00007f5c884eb0ed in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f5c688a6700 (LWP 7512)):
#0  0x00007f5c850d5a24 in g_mutex_unlock (mutex=0x7f5c5c000990) at gthread-posix.c:1347
#1  0x00007f5c85091259 in g_main_context_query (context=context@entry=0x7f5c5c000990, max_priority=2147483647, timeout=timeout@entry=0x7f5c688a5b64, fds=fds@entry=0x7f5c5c002e70, n_fds=n_fds@entry=1) at gmain.c:3589
#2  0x00007f5c85091978 in g_main_context_iterate (context=context@entry=0x7f5c5c000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3822
#3  0x00007f5c85091b1c in g_main_context_iteration (context=0x7f5c5c000990, may_block=may_block@entry=1) at gmain.c:3901
#4  0x00007f5c892e575b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5c5c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#5  0x00007f5c8929481a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5c688a5ca0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:206
#6  0x00007f5c890f3353 in QThread::exec() (this=this@entry=0x56540a1b5d30) at thread/qthread.cpp:500
#7  0x00007f5c89ba7525 in QQmlThreadPrivate::run() (this=0x56540a1b5d30) at /usr/src/debug/qtdeclarative-opensource-src-5.6.2/src/qml/qml/ftw/qqmlthread.cpp:141
#8  0x00007f5c890f79ba in QThreadPrivate::start(void*) (arg=0x56540a1b5d30) at thread/qthread_unix.cpp:365
#9  0x00007f5c86a365ca in start_thread () at /lib64/libpthread.so.0
#10 0x00007f5c884eb0ed in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f5c690a7700 (LWP 7511)):
#0  0x00007f5c884db1cd in read () at /lib64/libc.so.6
#1  0x00007f5c850d4660 in g_wakeup_acknowledge (__nbytes=16, __buf=0x7f5c690a6a70, __fd=<optimized out>) at /usr/include/bits/unistd.h:44
#2  0x00007f5c850d4660 in g_wakeup_acknowledge (wakeup=0x7f5c6c0015b0) at gwakeup.c:210
#3  0x00007f5c850914d6 in g_main_context_check (context=context@entry=0x7f5c64000990, max_priority=2147483647, fds=fds@entry=0x7f5c64013c20, n_fds=n_fds@entry=1) at gmain.c:3632
#4  0x00007f5c850919a4 in g_main_context_iterate (context=context@entry=0x7f5c64000990, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3837
#5  0x00007f5c85091b1c in g_main_context_iteration (context=0x7f5c64000990, may_block=may_block@entry=1) at gmain.c:3901
#6  0x00007f5c892e575b in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f5c640008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:419
#7  0x00007f5c8929481a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f5c690a6c80, flags=..., flags@entry=...) at kernel/qeventloop.cpp:206
#8  0x00007f5c890f3353 in QThread::exec() (this=this@entry=0x7f5c8cca4060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread.cpp:500
#9  0x00007f5c8cc2f559 in QDBusConnectionManager::run() (this=0x7f5c8cca4060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:189
#10 0x00007f5c890f79ba in QThreadPrivate::start(void*) (arg=0x7f5c8cca4060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:365
#11 0x00007f5c86a365ca in start_thread () at /lib64/libpthread.so.0
#12 0x00007f5c884eb0ed in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f5c715c9700 (LWP 7510)):
#0  0x00007f5c884df56d in poll () at /lib64/libc.so.6
#1  0x00007f5c80b55f80 in _xcb_conn_wait (__timeout=-1, __nfds=1, __fds=0x7f5c715c8bc0) at /usr/include/bits/poll2.h:46
#2  0x00007f5c80b55f80 in _xcb_conn_wait (c=c@entry=0x56540a0fbae0, cond=cond@entry=0x56540a0fbb20, vector=vector@entry=0x0, count=count@entry=0x0) at xcb_conn.c:459
#3  0x00007f5c80b57b79 in xcb_wait_for_event (c=0x56540a0fbae0) at xcb_in.c:693
#4  0x00007f5c74b4df99 in QXcbEventReader::run() (this=0x56540a1061b0) at qxcbconnection.cpp:1331
#5  0x00007f5c890f79ba in QThreadPrivate::start(void*) (arg=0x56540a1061b0) at thread/qthread_unix.cpp:365
#6  0x00007f5c86a365ca in start_thread () at /lib64/libpthread.so.0
#7  0x00007f5c884eb0ed in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f5c7b5cb900 (LWP 7509)):
[KCrash Handler]
#6  0x00007f5c592838c7 in as_provided_get_items (prov=0x0) at /usr/src/debug/AppStream-0.10.3/src/as-provided.c:264
#7  0x00007f5c594b41ad in AppStream::Provided::items() const (this=this@entry=0x7ffe8f0fd760) at /usr/src/debug/AppStream-0.10.3/qt/provided.cpp:108
#8  0x00007f5c5992a990 in AppPackageKitResource::findProvides(AppStream::Provided::Kind) const (this=<optimized out>, kind=kind@entry=AppStream::Provided::KindBinary) at /usr/src/debug/discover-5.8.3/libdiscover/backends/PackageKitBackend/AppPackageKitResource.cpp:225
#9  0x00007f5c5992aa22 in AppPackageKitResource::executables() const (this=<optimized out>) at /usr/src/debug/discover-5.8.3/libdiscover/backends/PackageKitBackend/AppPackageKitResource.cpp:144
#10 0x00007f5c5992ac05 in AppPackageKitResource::canExecute() const (this=<optimized out>) at /usr/src/debug/discover-5.8.3/libdiscover/backends/PackageKitBackend/AppPackageKitResource.cpp:219
#11 0x00007f5c8c0a72ee in AbstractResource::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=_o@entry=0x56540aa83e10, _c=_c@entry=QMetaObject::ReadProperty, _id=_id@entry=4, _a=_a@entry=0x7ffe8f0fd8f0) at /usr/src/debug/discover-5.8.3/x86_64-redhat-linux-gnu/libdiscover/moc_AbstractResource.cpp:278
#12 0x00007f5c8c0a99cb in AbstractResource::qt_metacall(QMetaObject::Call, int, void**) (this=this@entry=0x56540aa83e10, _c=_c@entry=QMetaObject::ReadProperty, _id=4, _a=_a@entry=0x7ffe8f0fd8f0) at /usr/src/debug/discover-5.8.3/x86_64-redhat-linux-gnu/libdiscover/moc_AbstractResource.cpp:345
#13 0x00007f5c59938485 in PackageKitResource::qt_metacall(QMetaObject::Call, int, void**) (this=0x56540aa83e10, _c=QMetaObject::ReadProperty, _id=<optimized out>, _a=0x7ffe8f0fd8f0) at /usr/src/debug/discover-5.8.3/x86_64-redhat-linux-gnu/libdiscover/backends/PackageKitBackend/moc_PackageKitResource.cpp:166
#14 0x00007f5c89aebabe in LoadProperty<ReadAccessor::Direct>(QV4::ExecutionEngine*, QObject*, QQmlPropertyData const&, QQmlNotifier**) (property=..., n=0x0, output=0x7ffe8f0fd8d0, object=0x56540aa83e10) at /usr/src/debug/qtdeclarative-opensource-src-5.6.2/src/qml/jsruntime/qv4qobjectwrapper.cpp:129
#15 0x00007f5c89aebabe in LoadProperty<ReadAccessor::Direct>(QV4::ExecutionEngine*, QObject*, QQmlPropertyData const&, QQmlNotifier**) (v4=0x56540a1bb590, object=0x56540aa83e10, property=..., notifier=0x0) at /usr/src/debug/qtdeclarative-opensource-src-5.6.2/src/qml/jsruntime/qv4qobjectwrapper.cpp:168
#16 0x00007f5c89aec6cd in QV4::QObjectWrapper::getProperty(QV4::ExecutionEngine*, QObject*, QQmlPropertyData*, bool) (engine=engine@entry=0x56540a1bb590, object=0x56540aa83e10, property=0x7f5c5c361d38, captureRequired=captureRequired@entry=true) at /usr/src/debug/qtdeclarative-opensource-src-5.6.2/src/qml/jsruntime/qv4qobjectwrapper.cpp:378
#17 0x00007f5c89aece4c in QV4::QObjectWrapper::getQmlProperty(QQmlContextData*, QV4::String*, QV4::QObjectWrapper::RevisionMode, bool*, bool) const (this=0x7f5c62df13f0, qmlContext=0x56540b8979c0, name=0x7f5c62df13e8, revisionMode=QV4::QObjectWrapper::IgnoreRevision, hasProperty=0x0, includeImports=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.6.2/src/qml/jsruntime/qv4qobjectwrapper.cpp:318
#18 0x00007f5c89b02fe6 in QV4::Runtime::getProperty(QV4::ExecutionEngine*, QV4::Value const&, int) (hasProperty=0x0, name=<optimized out>, this=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.6.2/src/qml/jsruntime/qv4object_p.h:300
#19 0x00007f5c89b02fe6 in QV4::Runtime::getProperty(QV4::ExecutionEngine*, QV4::Value const&, int) (engine=0x56540a1bb590, object=..., nameIndex=<optimized out>) at /usr/src/debug/qtdeclarative-opensource-src-5.6.2/src/qml/jsruntime/qv4runtime.cpp:675
#20 0x00007f5c6809ed0e in  ()
#21 0x0000000000000000 in  ()

Reported using DrKonqi
Comment 1 Rex Dieter 2016-11-14 15:40:15 UTC
See also,
https://github.com/ximion/appstream/issues/89
Comment 2 Rex Dieter 2016-11-14 18:56:05 UTC
Fixed upstream