Re: Review Request: Fix crash on statusbarextension destruction

2011-11-10 Thread David Faure

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/103098/#review8079
---

Ship it!


Yep, looks good.

- David Faure


On Nov. 9, 2011, 9:40 p.m., Andras Mantia wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/103098/
 ---
 
 (Updated Nov. 9, 2011, 9:40 p.m.)
 
 
 Review request for kdelibs.
 
 
 Description
 ---
 
 With master, Qt 4.8 and kwebkitpart recently I run into crashes when I close 
 tabs holding web pages inside akregator. With the patch, it doesn't crash (as 
 it doesn't try to access parent() from the destructor).
 
 The BT is here:
 
 Application: Akregator (akregator), signal: Segmentation fault
 [Current thread is 1 (Thread 0x7f8eebe5f760 (LWP 17084))]
 
 Thread 4 (Thread 0x7f8ecb314700 (LWP 17090)):
 #0  0x7f8ee4c336f9 in pthread_cond_timedwait@@GLIBC_2.3.2 () from 
 /lib64/libpthread.so.0
 #1  0x7f8ee4eef649 in QWaitConditionPrivate::wait (this=0x1956ec0, 
 time=3) at thread/qwaitcondition_unix.cpp:84
 #2  0x7f8ee4eef40d in QWaitCondition::wait (this=0x19ba150, 
 mutex=0x19ba148, time=3) at thread/qwaitcondition_unix.cpp:158
 #3  0x7f8ee4edd285 in QThreadPoolThread::run (this=0x19b5810) at 
 concurrent/qthreadpool.cpp:141
 #4  0x7f8ee4eee0b6 in QThreadPrivate::start (arg=0x19b5810) at 
 thread/qthread_unix.cpp:298
 #5  0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
 #6  0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
 #7  0x7f8ee3c7366d in clone () from /lib64/libc.so.6
 #8  0x in ?? ()
 
 Thread 3 (Thread 0x7f8ec968f700 (LWP 17109)):
 #0  0x7f8ee4c3338c in pthread_cond_wait@@GLIBC_2.3.2 () from 
 /lib64/libpthread.so.0
 #1  0x7f8ed31d8321 in WTF::TCMalloc_PageHeap::scavengerThread() () from 
 //opt/qt4/lib/libQtWebKit.so.4
 #2  0x7f8ed31d78dc in WTF::TCMalloc_PageHeap::runScavengerThread(void*) 
 () from //opt/qt4/lib/libQtWebKit.so.4
 #3  0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
 #4  0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
 #5  0x7f8ee3c7366d in clone () from /lib64/libc.so.6
 #6  0x in ?? ()
 
 Thread 2 (Thread 0x7f8ec86d7700 (LWP 17110)):
 #0  0xff600177 in ?? ()
 #1  0x7fff885ff7a1 in ?? ()
 #2  0x7f8eddf122b3 in clock_gettime () from /lib64/librt.so.1
 #3  0x7f8ee4f5be26 in do_gettime (sec=0x7f8ec86d6948, 
 frac=0x7f8ec86d6940) at tools/qelapsedtimer_unix.cpp:123
 #4  0x7f8ee4f5be82 in qt_gettime () at tools/qelapsedtimer_unix.cpp:140
 #5  0x7f8ee50602de in QTimerInfoList::updateCurrentTime (this=0x7193730) 
 at kernel/qeventdispatcher_unix.cpp:343
 #6  0x7f8ee5060792 in QTimerInfoList::timerWait (this=0x7193730, tm=...) 
 at kernel/qeventdispatcher_unix.cpp:450
 #7  0x7f8ee505cfd4 in timerSourcePrepareHelper (src=0x71936d0, 
 timeout=0x7f8ec86d6acc) at kernel/qeventdispatcher_glib.cpp:136
 #8  0x7f8ee505d28d in idleTimerSourcePrepare (source=0x71a3110, 
 timeout=0x7f8ec86d6acc) at kernel/qeventdispatcher_glib.cpp:216
 #9  0x7f8eddc61087 in g_main_context_prepare () from 
 /lib64/libglib-2.0.so.0
 #10 0x7f8eddc61fa9 in ?? () from /lib64/libglib-2.0.so.0
 #11 0x7f8eddc62650 in g_main_context_iteration () from 
 /lib64/libglib-2.0.so.0
 #12 0x7f8ee505dd14 in QEventDispatcherGlib::processEvents 
 (this=0x6833680, flags=...) at kernel/qeventdispatcher_glib.cpp:426
 #13 0x7f8ee501e9ae in QEventLoop::processEvents (this=0x7f8ec86d6cf0, 
 flags=...) at kernel/qeventloop.cpp:149
 #14 0x7f8ee501eb38 in QEventLoop::exec (this=0x7f8ec86d6cf0, flags=...) 
 at kernel/qeventloop.cpp:204
 #15 0x7f8ee4eeb731 in QThread::exec (this=0x6995320) at 
 thread/qthread.cpp:501
 #16 0x7f8ee4eeb8d0 in QThread::run (this=0x6995320) at 
 thread/qthread.cpp:568
 #17 0x7f8ee4eee0b6 in QThreadPrivate::start (arg=0x6995320) at 
 thread/qthread_unix.cpp:298
 #18 0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
 #19 0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
 #20 0x7f8ee3c7366d in clone () from /lib64/libc.so.6
 #21 0x in ?? ()
 
 Thread 1 (Thread 0x7f8eebe5f760 (LWP 17084)):
 [KCrash Handler]
 #6  0x in ?? ()
 #7  0x7f8eeba82873 in KParts::StatusBarExtension::statusBar 
 (this=0x6c243a0) at 
 /encrypted/home/andris/development/sources/kde-trunk/kdelibs/kparts/statusbarextension.cpp:149
 #8  0x7f8eeba82544 in KParts::StatusBarExtension::~StatusBarExtension 
 (this=0x6c243a0, __in_chrg=value optimized out) at 
 /encrypted/home/andris/development/sources/kde-trunk/kdelibs/kparts/statusbarextension.cpp:99
 #9  0x7f8eeba8266a in KParts::StatusBarExtension::~StatusBarExtension 
 

Re: Review Request: Fix crash on statusbarextension destruction

2011-11-10 Thread Commit Hook

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/103098/#review8080
---


This review has been submitted with commit 
999eac446a49e6126df04aa8717f95e6aef136fc by Andras Mantia to branch KDE/4.7.

- Commit Hook


On Nov. 9, 2011, 9:40 p.m., Andras Mantia wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 http://git.reviewboard.kde.org/r/103098/
 ---
 
 (Updated Nov. 9, 2011, 9:40 p.m.)
 
 
 Review request for kdelibs.
 
 
 Description
 ---
 
 With master, Qt 4.8 and kwebkitpart recently I run into crashes when I close 
 tabs holding web pages inside akregator. With the patch, it doesn't crash (as 
 it doesn't try to access parent() from the destructor).
 
 The BT is here:
 
 Application: Akregator (akregator), signal: Segmentation fault
 [Current thread is 1 (Thread 0x7f8eebe5f760 (LWP 17084))]
 
 Thread 4 (Thread 0x7f8ecb314700 (LWP 17090)):
 #0  0x7f8ee4c336f9 in pthread_cond_timedwait@@GLIBC_2.3.2 () from 
 /lib64/libpthread.so.0
 #1  0x7f8ee4eef649 in QWaitConditionPrivate::wait (this=0x1956ec0, 
 time=3) at thread/qwaitcondition_unix.cpp:84
 #2  0x7f8ee4eef40d in QWaitCondition::wait (this=0x19ba150, 
 mutex=0x19ba148, time=3) at thread/qwaitcondition_unix.cpp:158
 #3  0x7f8ee4edd285 in QThreadPoolThread::run (this=0x19b5810) at 
 concurrent/qthreadpool.cpp:141
 #4  0x7f8ee4eee0b6 in QThreadPrivate::start (arg=0x19b5810) at 
 thread/qthread_unix.cpp:298
 #5  0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
 #6  0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
 #7  0x7f8ee3c7366d in clone () from /lib64/libc.so.6
 #8  0x in ?? ()
 
 Thread 3 (Thread 0x7f8ec968f700 (LWP 17109)):
 #0  0x7f8ee4c3338c in pthread_cond_wait@@GLIBC_2.3.2 () from 
 /lib64/libpthread.so.0
 #1  0x7f8ed31d8321 in WTF::TCMalloc_PageHeap::scavengerThread() () from 
 //opt/qt4/lib/libQtWebKit.so.4
 #2  0x7f8ed31d78dc in WTF::TCMalloc_PageHeap::runScavengerThread(void*) 
 () from //opt/qt4/lib/libQtWebKit.so.4
 #3  0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
 #4  0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
 #5  0x7f8ee3c7366d in clone () from /lib64/libc.so.6
 #6  0x in ?? ()
 
 Thread 2 (Thread 0x7f8ec86d7700 (LWP 17110)):
 #0  0xff600177 in ?? ()
 #1  0x7fff885ff7a1 in ?? ()
 #2  0x7f8eddf122b3 in clock_gettime () from /lib64/librt.so.1
 #3  0x7f8ee4f5be26 in do_gettime (sec=0x7f8ec86d6948, 
 frac=0x7f8ec86d6940) at tools/qelapsedtimer_unix.cpp:123
 #4  0x7f8ee4f5be82 in qt_gettime () at tools/qelapsedtimer_unix.cpp:140
 #5  0x7f8ee50602de in QTimerInfoList::updateCurrentTime (this=0x7193730) 
 at kernel/qeventdispatcher_unix.cpp:343
 #6  0x7f8ee5060792 in QTimerInfoList::timerWait (this=0x7193730, tm=...) 
 at kernel/qeventdispatcher_unix.cpp:450
 #7  0x7f8ee505cfd4 in timerSourcePrepareHelper (src=0x71936d0, 
 timeout=0x7f8ec86d6acc) at kernel/qeventdispatcher_glib.cpp:136
 #8  0x7f8ee505d28d in idleTimerSourcePrepare (source=0x71a3110, 
 timeout=0x7f8ec86d6acc) at kernel/qeventdispatcher_glib.cpp:216
 #9  0x7f8eddc61087 in g_main_context_prepare () from 
 /lib64/libglib-2.0.so.0
 #10 0x7f8eddc61fa9 in ?? () from /lib64/libglib-2.0.so.0
 #11 0x7f8eddc62650 in g_main_context_iteration () from 
 /lib64/libglib-2.0.so.0
 #12 0x7f8ee505dd14 in QEventDispatcherGlib::processEvents 
 (this=0x6833680, flags=...) at kernel/qeventdispatcher_glib.cpp:426
 #13 0x7f8ee501e9ae in QEventLoop::processEvents (this=0x7f8ec86d6cf0, 
 flags=...) at kernel/qeventloop.cpp:149
 #14 0x7f8ee501eb38 in QEventLoop::exec (this=0x7f8ec86d6cf0, flags=...) 
 at kernel/qeventloop.cpp:204
 #15 0x7f8ee4eeb731 in QThread::exec (this=0x6995320) at 
 thread/qthread.cpp:501
 #16 0x7f8ee4eeb8d0 in QThread::run (this=0x6995320) at 
 thread/qthread.cpp:568
 #17 0x7f8ee4eee0b6 in QThreadPrivate::start (arg=0x6995320) at 
 thread/qthread_unix.cpp:298
 #18 0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
 #19 0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
 #20 0x7f8ee3c7366d in clone () from /lib64/libc.so.6
 #21 0x in ?? ()
 
 Thread 1 (Thread 0x7f8eebe5f760 (LWP 17084)):
 [KCrash Handler]
 #6  0x in ?? ()
 #7  0x7f8eeba82873 in KParts::StatusBarExtension::statusBar 
 (this=0x6c243a0) at 
 /encrypted/home/andris/development/sources/kde-trunk/kdelibs/kparts/statusbarextension.cpp:149
 #8  0x7f8eeba82544 in KParts::StatusBarExtension::~StatusBarExtension 
 (this=0x6c243a0, __in_chrg=value optimized out) at 
 

Review Request: Fix crash on statusbarextension destruction

2011-11-09 Thread Andras Mantia

---
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/103098/
---

Review request for kdelibs.


Description
---

With master, Qt 4.8 and kwebkitpart recently I run into crashes when I close 
tabs holding web pages inside akregator. With the patch, it doesn't crash (as 
it doesn't try to access parent() from the destructor).

The BT is here:

Application: Akregator (akregator), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f8eebe5f760 (LWP 17084))]

Thread 4 (Thread 0x7f8ecb314700 (LWP 17090)):
#0  0x7f8ee4c336f9 in pthread_cond_timedwait@@GLIBC_2.3.2 () from 
/lib64/libpthread.so.0
#1  0x7f8ee4eef649 in QWaitConditionPrivate::wait (this=0x1956ec0, 
time=3) at thread/qwaitcondition_unix.cpp:84
#2  0x7f8ee4eef40d in QWaitCondition::wait (this=0x19ba150, 
mutex=0x19ba148, time=3) at thread/qwaitcondition_unix.cpp:158
#3  0x7f8ee4edd285 in QThreadPoolThread::run (this=0x19b5810) at 
concurrent/qthreadpool.cpp:141
#4  0x7f8ee4eee0b6 in QThreadPrivate::start (arg=0x19b5810) at 
thread/qthread_unix.cpp:298
#5  0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
#6  0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
#7  0x7f8ee3c7366d in clone () from /lib64/libc.so.6
#8  0x in ?? ()

Thread 3 (Thread 0x7f8ec968f700 (LWP 17109)):
#0  0x7f8ee4c3338c in pthread_cond_wait@@GLIBC_2.3.2 () from 
/lib64/libpthread.so.0
#1  0x7f8ed31d8321 in WTF::TCMalloc_PageHeap::scavengerThread() () from 
//opt/qt4/lib/libQtWebKit.so.4
#2  0x7f8ed31d78dc in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () 
from //opt/qt4/lib/libQtWebKit.so.4
#3  0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
#4  0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
#5  0x7f8ee3c7366d in clone () from /lib64/libc.so.6
#6  0x in ?? ()

Thread 2 (Thread 0x7f8ec86d7700 (LWP 17110)):
#0  0xff600177 in ?? ()
#1  0x7fff885ff7a1 in ?? ()
#2  0x7f8eddf122b3 in clock_gettime () from /lib64/librt.so.1
#3  0x7f8ee4f5be26 in do_gettime (sec=0x7f8ec86d6948, frac=0x7f8ec86d6940) 
at tools/qelapsedtimer_unix.cpp:123
#4  0x7f8ee4f5be82 in qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#5  0x7f8ee50602de in QTimerInfoList::updateCurrentTime (this=0x7193730) at 
kernel/qeventdispatcher_unix.cpp:343
#6  0x7f8ee5060792 in QTimerInfoList::timerWait (this=0x7193730, tm=...) at 
kernel/qeventdispatcher_unix.cpp:450
#7  0x7f8ee505cfd4 in timerSourcePrepareHelper (src=0x71936d0, 
timeout=0x7f8ec86d6acc) at kernel/qeventdispatcher_glib.cpp:136
#8  0x7f8ee505d28d in idleTimerSourcePrepare (source=0x71a3110, 
timeout=0x7f8ec86d6acc) at kernel/qeventdispatcher_glib.cpp:216
#9  0x7f8eddc61087 in g_main_context_prepare () from /lib64/libglib-2.0.so.0
#10 0x7f8eddc61fa9 in ?? () from /lib64/libglib-2.0.so.0
#11 0x7f8eddc62650 in g_main_context_iteration () from 
/lib64/libglib-2.0.so.0
#12 0x7f8ee505dd14 in QEventDispatcherGlib::processEvents (this=0x6833680, 
flags=...) at kernel/qeventdispatcher_glib.cpp:426
#13 0x7f8ee501e9ae in QEventLoop::processEvents (this=0x7f8ec86d6cf0, 
flags=...) at kernel/qeventloop.cpp:149
#14 0x7f8ee501eb38 in QEventLoop::exec (this=0x7f8ec86d6cf0, flags=...) at 
kernel/qeventloop.cpp:204
#15 0x7f8ee4eeb731 in QThread::exec (this=0x6995320) at 
thread/qthread.cpp:501
#16 0x7f8ee4eeb8d0 in QThread::run (this=0x6995320) at 
thread/qthread.cpp:568
#17 0x7f8ee4eee0b6 in QThreadPrivate::start (arg=0x6995320) at 
thread/qthread_unix.cpp:298
#18 0x7f8ecd69a9e3 in ?? () from /usr/X11R6/lib64/libGL.so.1
#19 0x7f8ee4c2ea3f in start_thread () from /lib64/libpthread.so.0
#20 0x7f8ee3c7366d in clone () from /lib64/libc.so.6
#21 0x in ?? ()

Thread 1 (Thread 0x7f8eebe5f760 (LWP 17084)):
[KCrash Handler]
#6  0x in ?? ()
#7  0x7f8eeba82873 in KParts::StatusBarExtension::statusBar 
(this=0x6c243a0) at 
/encrypted/home/andris/development/sources/kde-trunk/kdelibs/kparts/statusbarextension.cpp:149
#8  0x7f8eeba82544 in KParts::StatusBarExtension::~StatusBarExtension 
(this=0x6c243a0, __in_chrg=value optimized out) at 
/encrypted/home/andris/development/sources/kde-trunk/kdelibs/kparts/statusbarextension.cpp:99
#9  0x7f8eeba8266a in KParts::StatusBarExtension::~StatusBarExtension 
(this=0x6c243a0, __in_chrg=value optimized out) at 
/encrypted/home/andris/development/sources/kde-trunk/kdelibs/kparts/statusbarextension.cpp:110
#10 0x7f8ee503b650 in QObjectPrivate::deleteChildren (this=0x5d966c0) at 
kernel/qobject.cpp:1907
#11 0x7f8ee5039d4f in QObject::~QObject (this=0x19cfb90, __in_chrg=value 
optimized out) at kernel/qobject.cpp:926
#12 0x7f8eeba5fbf0 in KParts::Part::~Part (this=0x19cfb90, 
__vtt_parm=0x7f8ec98e4950,