Bug 385040 - Discover crashes in QQuickItem::isVisible() when attempting to go to home page
Summary: Discover crashes in QQuickItem::isVisible() when attempting to go to home page
Status: RESOLVED FIXED
Alias: None
Product: Discover
Classification: Applications
Component: discover (show other bugs)
Version: 5.11.3
Platform: Neon Linux
: NOR crash
Target Milestone: ---
Assignee: Aleix Pol
URL:
Keywords: drkonqi
: 388879 391725 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-09-25 03:35 UTC by Patrick Silva
Modified: 2018-03-11 20:39 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 Patrick Silva 2017-09-25 03:35:16 UTC
Application: plasma-discover (5.11.90)

Qt Version: 5.9.1
Frameworks Version: 5.39.0
Operating System: Linux 4.10.0-35-generic x86_64
Distribution: KDE neon Developer Edition

-- Information about the crash:
- What I was doing when the application crashed:
I was browsing through the available softwares and clicked blue area above the search field.

-- Backtrace:
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 0x7f2477e7e8c0 (LWP 13803))]

Thread 11 (Thread 0x7f243301f700 (LWP 14527)):
#0  0x00007f246f6c4a94 in g_mutex_unlock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f246f68023d in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f246f68049c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f2474cd394b in QEventDispatcherGlib::processEvents (this=0x7f2428004370, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f2474c7c7ca in QEventLoop::exec (this=this@entry=0x7f243301ed00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#5  0x00007f2474aa5cd4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:515
#6  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x7f244879a620) at thread/qthread_unix.cpp:368
#7  0x00007f24715086ba in start_thread (arg=0x7f243301f700) at pthread_create.c:333
#8  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 10 (Thread 0x7f243281e700 (LWP 14526)):
#0  0x00007f24740a270d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f246f68038c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f246f68049c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f2474cd394b in QEventDispatcherGlib::processEvents (this=0x7f2420003b30, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f2474c7c7ca in QEventLoop::exec (this=this@entry=0x7f243281dd00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#5  0x00007f2474aa5cd4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:515
#6  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x36ebc40) at thread/qthread_unix.cpp:368
#7  0x00007f24715086ba in start_thread (arg=0x7f243281e700) at pthread_create.c:333
#8  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 9 (Thread 0x7f2442ad2700 (LWP 14524)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007f2474aab826 in QWaitConditionPrivate::wait_relative (time=30000, this=0x7f243400aeb0) at thread/qwaitcondition_unix.cpp:133
#2  QWaitConditionPrivate::wait (time=30000, this=0x7f243400aeb0) at thread/qwaitcondition_unix.cpp:141
#3  QWaitCondition::wait (this=this@entry=0x7f243400aa90, mutex=mutex@entry=0x7f2434005590, time=30000) at thread/qwaitcondition_unix.cpp:215
#4  0x00007f2474aa6e9a in QThreadPoolThread::run (this=0x7f243400aa80) at thread/qthreadpool.cpp:133
#5  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x7f243400aa80) at thread/qthread_unix.cpp:368
#6  0x00007f24715086ba in start_thread (arg=0x7f2442ad2700) at pthread_create.c:333
#7  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 8 (Thread 0x7f243158a700 (LWP 13815)):
#0  0x00007f246f6c4a79 in g_mutex_lock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f246f67f464 in g_main_context_release () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f246f680346 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f246f68049c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f2474cd394b in QEventDispatcherGlib::processEvents (this=0x7f24240008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f2474c7c7ca in QEventLoop::exec (this=this@entry=0x7f2431589d00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#6  0x00007f2474aa5cd4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:515
#7  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x28799b0) at thread/qthread_unix.cpp:368
#8  0x00007f24715086ba in start_thread (arg=0x7f243158a700) at pthread_create.c:333
#9  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 7 (Thread 0x7f24432d3700 (LWP 13810)):
#0  0x00007f246f6c4a94 in g_mutex_unlock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f246f67fdb9 in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f246f680330 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f246f68049c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f2474cd394b in QEventDispatcherGlib::processEvents (this=0x7f24340008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#5  0x00007f2474c7c7ca in QEventLoop::exec (this=this@entry=0x7f24432d2d00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#6  0x00007f2474aa5cd4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:515
#7  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x3796970) at thread/qthread_unix.cpp:368
#8  0x00007f24715086ba in start_thread (arg=0x7f24432d3700) at pthread_create.c:333
#9  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7f2444181700 (LWP 13809)):
#0  0x00007f24740a270d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f246f68038c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f246f68049c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f2474cd394b in QEventDispatcherGlib::processEvents (this=0x7f243c0008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f2474c7c7ca in QEventLoop::exec (this=this@entry=0x7f2444180d00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#5  0x00007f2474aa5cd4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:515
#6  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x37aa2b0) at thread/qthread_unix.cpp:368
#7  0x00007f24715086ba in start_thread (arg=0x7f2444181700) at pthread_create.c:333
#8  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7f244f286700 (LWP 13807)):
#0  0x00007f24740a270d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f246f68038c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f246f68049c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f2474cd394b in QEventDispatcherGlib::processEvents (this=0x7f24480008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f2474c7c7ca in QEventLoop::exec (this=this@entry=0x7f244f285c90, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#5  0x00007f2474aa5cd4 in QThread::exec (this=this@entry=0x24913a0) at thread/qthread.cpp:515
#6  0x00007f24774b8256 in QQuickPixmapReader::run (this=0x24913a0) at util/qquickpixmapcache.cpp:868
#7  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x24913a0) at thread/qthread_unix.cpp:368
#8  0x00007f24715086ba in start_thread (arg=0x7f244f286700) at pthread_create.c:333
#9  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7f245d4c1700 (LWP 13806)):
#0  0x00007f246f6c4a94 in g_mutex_unlock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f246f68023d in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f246f68049c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f2474cd394b in QEventDispatcherGlib::processEvents (this=0x7f24500008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f2474c7c7ca in QEventLoop::exec (this=this@entry=0x7f245d4c0ce0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#5  0x00007f2474aa5cd4 in QThread::exec (this=this@entry=0x2093a70) at thread/qthread.cpp:515
#6  0x00007f24754a60c5 in QQmlThreadPrivate::run (this=0x2093a70) at qml/ftw/qqmlthread.cpp:147
#7  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x2093a70) at thread/qthread_unix.cpp:368
#8  0x00007f24715086ba in start_thread (arg=0x7f245d4c1700) at pthread_create.c:333
#9  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f245e6d2700 (LWP 13805)):
#0  0x00007f24740a270d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f246f68038c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f246f68049c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f2474cd394b in QEventDispatcherGlib::processEvents (this=0x7f24580008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:425
#4  0x00007f2474c7c7ca in QEventLoop::exec (this=this@entry=0x7f245e6d1cd0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:212
#5  0x00007f2474aa5cd4 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:515
#6  0x00007f2477fc6b75 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x7f247803cda0) at thread/qthread_unix.cpp:368
#8  0x00007f24715086ba in start_thread (arg=0x7f245e6d2700) at pthread_create.c:333
#9  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f2466cd9700 (LWP 13804)):
#0  0x00007f24740a270d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007f246f41dc62 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007f246f41f8d7 in xcb_wait_for_event () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007f2469231329 in QXcbEventReader::run (this=0x1ffb420) at qxcbconnection.cpp:1322
#4  0x00007f2474aaa989 in QThreadPrivate::start (arg=0x1ffb420) at thread/qthread_unix.cpp:368
#5  0x00007f24715086ba in start_thread (arg=0x7f2466cd9700) at pthread_create.c:333
#6  0x00007f24740ae3dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f2477e7e8c0 (LWP 13803)):
[KCrash Handler]
#6  0x00007f2477569d64 in QQuickItem::isVisible (this=this@entry=0x814d920) at items/qquickitem.cpp:5767
#7  0x00007f247756e895 in QQuickKeysAttached::inputMethodQuery (this=0x54a2480, query=Qt::ImHints) at items/qquickitem.cpp:1473
#8  0x00007f247756f584 in QQuickItem::inputMethodQuery (this=<optimized out>, query=<optimized out>) at items/qquickitem.cpp:4195
#9  0x00007f2477576406 in QQuickItem::event (this=0x358ebb0, ev=0x7ffd7d7885f0) at items/qquickitem.cpp:7703
#10 0x00007f2475c753fc in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x358ebb0, e=0x7ffd7d7885f0) at kernel/qapplication.cpp:3717
#11 0x00007f2475c7ce07 in QApplication::notify (this=0x7ffd7d79a660, receiver=0x358ebb0, e=0x7ffd7d7885f0) at kernel/qapplication.cpp:3476
#12 0x00007f2474c7e798 in QCoreApplication::notifyInternal2 (receiver=receiver@entry=0x358ebb0, event=event@entry=0x7ffd7d7885f0) at kernel/qcoreapplication.cpp:1018
#13 0x00007f247570035a in QCoreApplication::sendEvent (event=0x7ffd7d7885f0, receiver=0x358ebb0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:233
#14 QGuiApplicationPrivate::_q_updateFocusObject (this=<optimized out>, object=0x358ebb0) at kernel/qguiapplication.cpp:3746
#15 0x00007f2475700c00 in QGuiApplication::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at .moc/moc_qguiapplication.cpp:179
#16 0x00007f2474caac19 in QMetaObject::activate (sender=sender@entry=0x2142cf0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=16, argv=argv@entry=0x7ffd7d7887b0) at kernel/qobject.cpp:3766
#17 0x00007f2474cab527 in QMetaObject::activate (sender=sender@entry=0x2142cf0, m=m@entry=0x7f2475b063a0 <QWindow::staticMetaObject>, local_signal_index=local_signal_index@entry=16, argv=argv@entry=0x7ffd7d7887b0) at kernel/qobject.cpp:3628
#18 0x00007f2475703242 in QWindow::focusObjectChanged (this=this@entry=0x2142cf0, _t1=0x358ebb0) at .moc/moc_qwindow.cpp:770
#19 0x00007f24775894bd in QQuickWindowPrivate::setFocusInScope (this=0x2142dc0, scope=scope@entry=0x22d9e50, item=item@entry=0x358ebb0, reason=reason@entry=Qt::OtherFocusReason, options=..., options@entry=...) at items/qquickwindow.cpp:974
#20 0x00007f2477575b18 in QQuickItem::setFocus (this=this@entry=0x358ebb0, focus=focus@entry=true, reason=reason@entry=Qt::OtherFocusReason) at items/qquickitem.cpp:6974
#21 0x00007f2477575e77 in QQuickItem::forceActiveFocus (this=0x358ebb0, reason=reason@entry=Qt::OtherFocusReason) at items/qquickitem.cpp:4650
#22 0x00007f247757645a in QQuickItem::forceActiveFocus (this=<optimized out>) at items/qquickitem.cpp:4620
#23 0x00007f247757a585 in QQuickItem::qt_static_metacall (_o=_o@entry=0x358ebb0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=36, _a=_a@entry=0x7ffd7d789250) at .moc/moc_qquickitem.cpp:629
#24 0x00007f247757b4f8 in QQuickItem::qt_metacall (this=this@entry=0x358ebb0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=36, _a=_a@entry=0x7ffd7d789250) at .moc/moc_qquickitem.cpp:984
#25 0x00007f2457d42105 in QQuickControl::qt_metacall (this=this@entry=0x358ebb0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=_a@entry=0x7ffd7d789250) at .moc/moc_qquickcontrol_p.cpp:459
#26 0x00007f2457d45ee5 in QQuickPage::qt_metacall (this=0x358ebb0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7ffd7d789250) at .moc/moc_qquickpage_p.cpp:260
#27 0x00007f247540154c in QQmlVMEMetaObject::metaCall (this=0x53671c0, o=<optimized out>, c=QMetaObject::InvokeMetaMethod, _id=41, a=0x7ffd7d789250) at qml/qqmlvmemetaobject.cpp:976
#28 0x00007f247540158e in QQmlVMEMetaObject::metaCall (this=0x55c8a50, o=<optimized out>, c=QMetaObject::InvokeMetaMethod, _id=41, a=0x7ffd7d789250) at qml/qqmlvmemetaobject.cpp:974
#29 0x00007f247540158e in QQmlVMEMetaObject::metaCall (this=0x54194b0, o=<optimized out>, c=QMetaObject::InvokeMetaMethod, _id=41, a=0x7ffd7d789250) at qml/qqmlvmemetaobject.cpp:974
#30 0x00007f247540158e in QQmlVMEMetaObject::metaCall (this=0x531c410, o=<optimized out>, c=QMetaObject::InvokeMetaMethod, _id=41, a=0x7ffd7d789250) at qml/qqmlvmemetaobject.cpp:974
#31 0x00007f247545a629 in QQmlObjectOrGadget::metacall (this=this@entry=0x7ffd7d789570, type=type@entry=QMetaObject::InvokeMetaMethod, index=index@entry=41, argv=argv@entry=0x7ffd7d789250) at qml/qqmlpropertycache.cpp:1727
#32 0x00007f24753dc794 in CallMethod (object=..., index=41, returnType=<optimized out>, argCount=argCount@entry=0, argTypes=argTypes@entry=0x0, engine=engine@entry=0x20cdcb0, callArgs=0x7f245c0c2c10, callType=QMetaObject::InvokeMetaMethod) at jsruntime/qv4qobjectwrapper.cpp:1100
#33 0x00007f24753dcb9e in CallPrecise (object=..., data=..., engine=engine@entry=0x20cdcb0, callArgs=callArgs@entry=0x7f245c0c2c10, callType=callType@entry=QMetaObject::InvokeMetaMethod) at jsruntime/qv4qobjectwrapper.cpp:1348
#34 0x00007f24753ddb57 in CallOverloaded (callType=QMetaObject::InvokeMetaMethod, propertyCache=<optimized out>, callArgs=0x7f245c0c2c10, engine=0x20cdcb0, data=..., object=...) at jsruntime/qv4qobjectwrapper.cpp:1418
#35 QV4::QObjectMethod::callInternal (this=<optimized out>, callData=<optimized out>, scope=...) at jsruntime/qv4qobjectwrapper.cpp:1840
#36 0x00007f24753f627e in QV4::Object::call (d=0x7f245c0c2c10, scope=..., this=<optimized out>) at jsruntime/qv4object_p.h:372
#37 QV4::Runtime::method_callProperty (engine=0x20cdcb0, nameIndex=<optimized out>, callData=0x7f245c0c2c10) at jsruntime/qv4runtime.cpp:1102
#38 0x00007f24571e79e7 in ?? ()
#39 0x0000000008b03290 in ?? ()
#40 0x0000000008aff190 in ?? ()
#41 0x0000000000000000 in ?? ()

Reported using DrKonqi
Comment 1 Nate Graham 2017-12-12 04:15:07 UTC
I hit this once tonight while trying to reproduce https://bugs.kde.org/show_bug.cgi?id=387789 by repeatedly searching for things. At one point it sent me back to the home page and crashed. The backtrace was identical to what's already below.
Comment 2 Nate Graham 2017-12-28 20:27:56 UTC
I just discovered a 100% reproducible case of this crash using current git master

1. Start or restart Discover
2. Navigate to VLC  (click Applications sidebar item -> click VLC)
3. Click "< Back" in sidebar
4. Click "Applications" in sidebar
Comment 3 Aleix Pol 2017-12-29 12:52:11 UTC
Not here :(
Comment 4 Nate Graham 2017-12-29 14:30:45 UTC
Maybe it's only reproducible in KDE Neon for some reason? I can reproduce this 100% in a KDE Neon VM; that's my dev environment. The original reporter was using KDE Neon, too.
Comment 5 Aleix Pol 2018-01-04 14:34:44 UTC
I can reproduce now, I don't know what I did wrong.
It's buried deep in Qt though... :'(

*grabs insecticide and hammer*
Comment 6 Aleix Pol 2018-01-04 15:32:32 UTC
Git commit 5e240b137ea69b2e091ec3468550bb64d6e53132 by Aleix Pol.
Committed on 04/01/2018 at 15:28.
Pushed by apol into branch 'master'.

Remove weird state where no category was being listed

M  +1    -1    discover/qml/DiscoverDrawer.qml

https://commits.kde.org/discover/5e240b137ea69b2e091ec3468550bb64d6e53132
Comment 7 Nate Graham 2018-01-14 05:26:22 UTC
*** Bug 388879 has been marked as a duplicate of this bug. ***
Comment 8 Nate Graham 2018-03-11 20:39:44 UTC
*** Bug 391725 has been marked as a duplicate of this bug. ***