Bug 218780 - Plasma Desktop crashes when switching to weather wallpaper [QMutex::unlock, QWaitCondition::wait, WiFiScan::run]
Summary: Plasma Desktop crashes when switching to weather wallpaper [QMutex::unlock, Q...
Status: RESOLVED DUPLICATE of bug 241509
Alias: None
Product: plasma4
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
: 221466 249031 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-12-15 11:02 UTC by Shawn Starr
Modified: 2010-09-07 07:02 UTC (History)
4 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 Shawn Starr 2009-12-15 11:02:03 UTC
Application: plasma-desktop (0.3)
KDE Platform Version: 4.3.82 (KDE 4.3.82 (KDE 4.4 >= 20091211)) (Compiled from sources)
Qt Version: 4.6.1
Operating System: Linux 2.6.32-custom-radeon x86_64
Distribution: Debian GNU/Linux unstable (sid)

-- Information about the crash:
I was switching the Desktop Activity to Weather Wallpaper then it just crashed.

 -- Backtrace:
Application: Plasma Workspace (plasma-desktop), signal: Aborted
[Current thread is 1 (Thread 0x7fc7acf90810 (LWP 3393))]

Thread 2 (Thread 0x7fc787f5d910 (LWP 3517)):
[KCrash Handler]
#5  0x00007fc7a5f03f55 in raise () from /lib/libc.so.6
#6  0x00007fc7a5f06d90 in abort () from /lib/libc.so.6
#7  0x00007fc7a6c79b29 in qt_message_output (msgType=QtFatalMsg, 
    buf=0x24a6fe8 "ASSERT failure in QMutex::unlock(): \"A mutex must be unlocked in the same thread that locked it.\", file /root/qt/src/corelib/thread/qmutex.cpp, line 371")
    at /root/qt/src/corelib/global/qglobal.cpp:2226
#8  0x00007fc7a6c79d21 in qt_message (msgType=QtFatalMsg, msg=0x7fc7a6e3b8d8 "ASSERT failure in %s: \"%s\", file %s, line %d", ap=0x7fc787f5cb50) at /root/qt/src/corelib/global/qglobal.cpp:2272
#9  0x00007fc7a6c79e4d in qFatal (msg=0x7fc7a6e3b8d8 "ASSERT failure in %s: \"%s\", file %s, line %d") at /root/qt/src/corelib/global/qglobal.cpp:2455
#10 0x00007fc7a6c79e89 in qt_assert_x (where=0x7fc7a6e3ce7c "QMutex::unlock()", what=0x7fc7a6e3ce40 "A mutex must be unlocked in the same thread that locked it.", 
    file=0x7fc7a6e3cde8 "/root/qt/src/corelib/thread/qmutex.cpp", line=371) at /root/qt/src/corelib/global/qglobal.cpp:1997
#11 0x00007fc7a6c7e72d in QMutex::unlock (this=0x2e7b7c8) at /root/qt/src/corelib/thread/qmutex.cpp:371
#12 0x00007fc7a6c86c66 in QWaitCondition::wait (this=0x2e7b7d0, mutex=0x2e7b7c8, time=18446744073709551615) at /root/qt/src/corelib/thread/qwaitcondition_unix.cpp:157
#13 0x00007fc780fa0990 in WiFiScan::run (this=0x2e7b7b0) at /root/playground-plasma/dataengines/geolocation-wifi/location_wifi.cpp:142
#14 0x00007fc7a6c8672a in QThreadPrivate::start (arg=0x2e7b7b0) at /root/qt/src/corelib/thread/qthread_unix.cpp:244
#15 0x00007fc7a69d473a in start_thread () from /lib/libpthread.so.0
#16 0x00007fc7a5f9d69d in clone () from /lib/libc.so.6
#17 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fc7acf90810 (LWP 3393)):
#0  0x00007fc7a69db474 in __lll_lock_wait () from /lib/libpthread.so.0
#1  0x00007fc7a69d6e79 in _L_lock_949 () from /lib/libpthread.so.0
#2  0x00007fc7a69d6c9b in pthread_mutex_lock () from /lib/libpthread.so.0
#3  0x00007fc7a6c86d3c in QWaitCondition::wakeOne (this=0x2e7b7d0) at /root/qt/src/corelib/thread/qwaitcondition_unix.cpp:132
#4  0x00007fc780fa0a5b in ~WiFiScan (this=0x2e7b7b0, __in_chrg=<value optimized out>) at /root/playground-plasma/dataengines/geolocation-wifi/location_wifi.cpp:80
#5  0x00007fc780fa007d in ~WiFi (this=0x281e3c0, __in_chrg=<value optimized out>) at /root/playground-plasma/dataengines/geolocation-wifi/location_wifi.cpp:177
#6  0x00007fc7806d9075 in qDeleteAll<QList<GeolocationProvider*>::const_iterator> (begin=..., end=...) at /usr/local/qt4/include/QtCore/qalgorithms.h:322
#7  0x00007fc7806d920b in qDeleteAll<QList<GeolocationProvider*> > (c=...) at /usr/local/qt4/include/QtCore/qalgorithms.h:330
#8  0x00007fc7806d7ea3 in ~Geolocation (this=0x27a60f0, __in_chrg=<value optimized out>) at /root/kdebase/workspace/plasma/generic/dataengines/geolocation/geolocation.cpp:65
#9  0x00007fc7ab9190b6 in ~DataEngineManagerPrivate (this=0x26716c0, __in_chrg=<value optimized out>) at /root/kdelibs/plasma/dataenginemanager.cpp:54
#10 0x00007fc7ab918556 in ~DataEngineManager (this=0x2671060, __in_chrg=<value optimized out>) at /root/kdelibs/plasma/dataenginemanager.cpp:93
#11 0x00007fc7ab9197b7 in ~DataEngineManagerSingleton (this=0x2671060, __in_chrg=<value optimized out>) at /root/kdelibs/plasma/dataenginemanager.cpp:74
#12 0x00007fc7ab9185c8 in destroy () at /root/kdelibs/plasma/dataenginemanager.cpp:79
#13 0x00007fc7ab8cb73f in ~KCleanUpGlobalStatic (this=0x7fc7abd5a540, __in_chrg=<value optimized out>) at /root/kdelibs/kdecore/kernel/kglobal.h:62
#14 0x00007fc7a5f08422 in ?? () from /lib/libc.so.6
#15 0x00007fc7a5f08475 in exit () from /lib/libc.so.6
#16 0x00007fc7a7699fd8 in qt_xio_errhandler () at /root/qt/src/gui/kernel/qapplication_x11.cpp:734
#17 0x00007fc7aa321849 in KApplication::xioErrhandler (this=0x21e7900, dpy=0x2222150) at /root/kdelibs/kdeui/kernel/kapplication.cpp:408
#18 0x00007fc7aa321877 in kde_xio_errhandler (dpy=0x2222150) at /root/kdelibs/kdeui/kernel/kapplication.cpp:125
#19 0x00007fc7a927daae in _XIOError () from /usr/lib/libX11.so.6
#20 0x00007fc7a9284b28 in ?? () from /usr/lib/libX11.so.6
#21 0x00007fc7a9285437 in _XEventsQueued () from /usr/lib/libX11.so.6
#22 0x00007fc7a926e38b in XEventsQueued () from /usr/lib/libX11.so.6
#23 0x00007fc7a76e0873 in x11EventSourceCheck (s=0x21fff90) at /root/qt/src/gui/kernel/qguieventdispatcher_glib.cpp:87
#24 0x00007fc7a05adfec in g_main_context_check () from /lib/libglib-2.0.so.0
#25 0x00007fc7a05ae8a1 in ?? () from /lib/libglib-2.0.so.0
#26 0x00007fc7a05aeb3c in g_main_context_iteration () from /lib/libglib-2.0.so.0
#27 0x00007fc7a6dedbf5 in QEventDispatcherGlib::processEvents (this=0x21cec80, flags=...) at /root/qt/src/corelib/kernel/qeventdispatcher_glib.cpp:407
#28 0x00007fc7a76e022b in QGuiEventDispatcherGlib::processEvents (this=0x21cec80, flags=...) at /root/qt/src/gui/kernel/qguieventdispatcher_glib.cpp:202
#29 0x00007fc7a6dae65b in QEventLoop::processEvents (this=0x7ffff54bd160, flags=...) at /root/qt/src/corelib/kernel/qeventloop.cpp:149
#30 0x00007fc7a6dae87f in QEventLoop::exec (this=0x7ffff54bd160, flags=...) at /root/qt/src/corelib/kernel/qeventloop.cpp:201
#31 0x00007fc7a6db2c97 in QCoreApplication::exec () at /root/qt/src/corelib/kernel/qcoreapplication.cpp:981
#32 0x00007fc7a75f00d2 in QApplication::exec () at /root/qt/src/gui/kernel/qapplication.cpp:3572
#33 0x00007fc7acb7c562 in kdemain (argc=1, argv=0x7ffff54bd538) at /root/kdebase/workspace/plasma/desktop/shell/main.cpp:112
#34 0x0000000000400937 in main (argc=1, argv=0x7ffff54bd538) at /root/kdebase-dev/workspace/plasma/desktop/shell/plasma-desktop_dummy.cpp:3

Reported using DrKonqi
Comment 1 Dario Andres 2010-01-06 03:01:54 UTC
*** Bug 221466 has been marked as a duplicate of this bug. ***
Comment 2 Dario Andres 2010-03-21 23:48:25 UTC
As far as I remember this was fixed in playground (crash caused by the WiFi dataengine) (bug 229841).
Regards
Comment 3 Pino Toscano 2010-08-26 00:51:54 UTC
*** Bug 249031 has been marked as a duplicate of this bug. ***
Comment 4 Christoph Feck 2010-08-26 00:59:32 UTC
Reopen, see bug 249031.
Comment 5 Aaron J. Seigo 2010-09-07 07:02:16 UTC

*** This bug has been marked as a duplicate of bug 241509 ***