Bug 217829

Summary: krunner crashes when typing full name of an application to run [QPen::~QPen, QPainterState::~QPainterState, QPainter::end]
Product: [Plasma] krunner Reporter: Mark <markotahal>
Component: generalAssignee: Plasma Bugs List <plasma-bugs>
Status: RESOLVED DUPLICATE    
Severity: crash CC: wilderkde
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Mark 2009-12-08 08:15:59 UTC
Application: krunner (0.1)
KDE Platform Version: 4.3.80 (KDE 4.3.80 (KDE 4.4 Beta1))
Qt Version: 4.6.0
Operating System: Linux 2.6.31-ARCH i686
Distribution (Platform): Archlinux Packages

-- Information about the crash:
kde 4.4 beta1: 
steps to reproduce: 
alt f2 to bring krunner, start typing app name (netbeans in my case), so eg on 'netb' netbeans and some more show up, continue typing, when i finish the name 'netbeans' the app crashes (still not clicking anything)

maybe some list of possible choices to show is empty and thaht causes the crash? 

thank you very much

The crash can be reproduced everytime.

 -- Backtrace:
Application: Run Command Interface (kdeinit4), signal: Aborted
[Current thread is 1 (Thread 0xb5405920 (LWP 7639))]

Thread 6 (Thread 0xa7ad2b70 (LWP 7652)):
#0  0xb77f5424 in __kernel_vsyscall ()
#1  0xb753ee65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb75b43f7 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0xb5c257a2 in ?? () from /usr/lib/libQtNetwork.so.4
#4  0xb75b34be in ?? () from /usr/lib/libQtCore.so.4
#5  0xb753a8ac in start_thread () from /lib/libpthread.so.0
#6  0xb5ea9a9e in clone () from /lib/libc.so.6

Thread 5 (Thread 0xa71ccb70 (LWP 7921)):
#0  0xb77f5424 in __kernel_vsyscall ()
#1  0xb753ee65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb75b43f7 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0xb77e3870 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#4  0xb77e63ec in ThreadWeaver::WorkingHardState::waitForAvailableJob(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#5  0xb77e222b in ThreadWeaver::WeaverImpl::waitForAvailableJob(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#6  0xb77e64e2 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib/libthreadweaver.so.4
#7  0xb77e3af3 in ThreadWeaver::WeaverImpl::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib/libthreadweaver.so.4
#8  0xb77e44ce in ThreadWeaver::ThreadRunHelper::run(ThreadWeaver::WeaverImpl*, ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#9  0xb77e4aeb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#10 0xb75b34be in ?? () from /usr/lib/libQtCore.so.4
#11 0xb753a8ac in start_thread () from /lib/libpthread.so.0
#12 0xb5ea9a9e in clone () from /lib/libc.so.6

Thread 4 (Thread 0xa69cbb70 (LWP 7922)):
#0  0xb77f5424 in __kernel_vsyscall ()
#1  0xb753ee65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb75b43f7 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0xb77e3870 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#4  0xb77e63ec in ThreadWeaver::WorkingHardState::waitForAvailableJob(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#5  0xb77e222b in ThreadWeaver::WeaverImpl::waitForAvailableJob(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#6  0xb77e64e2 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib/libthreadweaver.so.4
#7  0xb77e3af3 in ThreadWeaver::WeaverImpl::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib/libthreadweaver.so.4
#8  0xb77e44ce in ThreadWeaver::ThreadRunHelper::run(ThreadWeaver::WeaverImpl*, ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#9  0xb77e4aeb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#10 0xb75b34be in ?? () from /usr/lib/libQtCore.so.4
#11 0xb753a8ac in start_thread () from /lib/libpthread.so.0
#12 0xb5ea9a9e in clone () from /lib/libc.so.6

Thread 3 (Thread 0xa61cab70 (LWP 7923)):
#0  0xb77f5424 in __kernel_vsyscall ()
#1  0xb753ee65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb75b43f7 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0xb77e3870 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#4  0xb77e63ec in ThreadWeaver::WorkingHardState::waitForAvailableJob(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#5  0xb77e222b in ThreadWeaver::WeaverImpl::waitForAvailableJob(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#6  0xb77e64e2 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib/libthreadweaver.so.4
#7  0xb77e3af3 in ThreadWeaver::WeaverImpl::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib/libthreadweaver.so.4
#8  0xb77e44ce in ThreadWeaver::ThreadRunHelper::run(ThreadWeaver::WeaverImpl*, ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#9  0xb77e4aeb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#10 0xb75b34be in ?? () from /usr/lib/libQtCore.so.4
#11 0xb753a8ac in start_thread () from /lib/libpthread.so.0
#12 0xb5ea9a9e in clone () from /lib/libc.so.6

Thread 2 (Thread 0xa59c9b70 (LWP 7924)):
#0  0xb77f5424 in __kernel_vsyscall ()
#1  0xb753ee65 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb75b43f7 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0xb77e3870 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#4  0xb77e63ec in ThreadWeaver::WorkingHardState::waitForAvailableJob(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#5  0xb77e222b in ThreadWeaver::WeaverImpl::waitForAvailableJob(ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#6  0xb77e64e2 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib/libthreadweaver.so.4
#7  0xb77e3af3 in ThreadWeaver::WeaverImpl::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) () from /usr/lib/libthreadweaver.so.4
#8  0xb77e44ce in ThreadWeaver::ThreadRunHelper::run(ThreadWeaver::WeaverImpl*, ThreadWeaver::Thread*) () from /usr/lib/libthreadweaver.so.4
#9  0xb77e4aeb in ThreadWeaver::Thread::run() () from /usr/lib/libthreadweaver.so.4
#10 0xb75b34be in ?? () from /usr/lib/libQtCore.so.4
#11 0xb753a8ac in start_thread () from /lib/libpthread.so.0
#12 0xb5ea9a9e in clone () from /lib/libc.so.6

Thread 1 (Thread 0xb5405920 (LWP 7639)):
[KCrash Handler]
#5  0xb77f5424 in __kernel_vsyscall ()
#6  0xb5e06561 in raise () from /lib/libc.so.6
#7  0xb5e07d62 in abort () from /lib/libc.so.6
#8  0xb5e41855 in __libc_message () from /lib/libc.so.6
#9  0xb5e476c1 in malloc_printerr () from /lib/libc.so.6
#10 0xb5e4bff6 in free () from /lib/libc.so.6
#11 0xb5fdb901 in operator delete(void*) () from /usr/lib/libstdc++.so.6
#12 0xb62e29c3 in QPen::~QPen() () from /usr/lib/libQtGui.so.4
#13 0xb62b22ca in QPainterState::~QPainterState() () from /usr/lib/libQtGui.so.4
#14 0xb62b404b in QPainter::end() () from /usr/lib/libQtGui.so.4
#15 0xb62b4db0 in QPainter::~QPainter() () from /usr/lib/libQtGui.so.4
#16 0xb372da65 in KRunnerDialog::event(QEvent*) () from /usr/lib/libkdeinit4_krunner.so
#17 0xb614bc1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#18 0xb61528e7 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#19 0xb6c5bb3a in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#20 0xb76b3c6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#21 0xb61b16f6 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/libQtGui.so.4
#22 0xb637f2f8 in ?? () from /usr/lib/libQtGui.so.4
#23 0xb61a1ac3 in QWidgetPrivate::syncBackingStore() () from /usr/lib/libQtGui.so.4
#24 0xb61a8eac in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#25 0xb372d9d3 in KRunnerDialog::event(QEvent*) () from /usr/lib/libkdeinit4_krunner.so
#26 0xb614bc1c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#27 0xb61528e7 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#28 0xb6c5bb3a in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#29 0xb76b3c6b in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#30 0xb76b6643 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#31 0xb76b67ad in QCoreApplication::sendPostedEvents(QObject*, int) () from /usr/lib/libQtCore.so.4
#32 0xb76dfbef in ?? () from /usr/lib/libQtCore.so.4
#33 0xb5d3a328 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#34 0xb5d3dba0 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#35 0xb5d3dcd3 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#36 0xb76df6e5 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#37 0xb62067b5 in ?? () from /usr/lib/libQtGui.so.4
#38 0xb76b22a9 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#39 0xb76b26fa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#40 0xb76b686f in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#41 0xb614bcb7 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#42 0xb3735d3e in kdemain () from /usr/lib/libkdeinit4_krunner.so
#43 0x0804dff2 in _start ()

Reported using DrKonqi
Comment 1 Jacopo De Simoi 2009-12-17 18:40:56 UTC
This is in fact a glibc bug, due to a race in free(), it should be fixed in 2.11.1

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