Bug 266173 - Muon-installer crashes if 3 apps are selected to install
Summary: Muon-installer crashes if 3 apps are selected to install
Status: RESOLVED FIXED
Alias: None
Product: muon
Classification: Applications
Component: installer (show other bugs)
Version: 1.1.0
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Jonathan Thomas
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-12 23:49 UTC by Jonathan Kolberg
Modified: 2011-02-13 17:56 UTC (History)
0 users

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 Jonathan Kolberg 2011-02-12 23:49:52 UTC
Version:           1.1.0 (using KDE 4.6.0) 
OS:                Linux

Installing more than 2 apps at once fails with muon-installer

Reproducible: Always

Steps to Reproduce:
Open Muon-installer. Select 3 random apps to install and 

Actual Results:  
It crashes and no drkonqi opens

Expected Results:  
All 3 are installed without crash
Comment 1 Jonathan Thomas 2011-02-13 00:45:54 UTC
I can't reproduce. Do you think you could run muon-installer in gdb and get a backtrace that way? (gdb muon-installer, from the gdb shell "run", crash app, then "bt full" from the gdb shell) Thanks.
Comment 2 Jonathan Kolberg 2011-02-13 15:29:05 UTC
I hope this backtrace helps you. I forgot to mention, that I watched the details of the first after adding and then added more.

Application: Muon-Programmverwaltung (muon-installer), signal: Segmentation fault
[Current thread is 1 (Thread 0x7ffff7fb5780 (LWP 11400))]

Thread 2 (Thread 0x7fffe3aba700 (LWP 15940)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216
#1  0x00007ffff610e00e in wait (this=<value optimized out>, mutex=0x2b1dd00, time=30000) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x2b1dd00, time=30000) at thread/qwaitcondition_unix.cpp:160
#3  0x00007ffff61040b8 in QThreadPoolThread::run (this=0x2b2a390) at concurrent/qthreadpool.cpp:140
#4  0x00007ffff610d9de in QThreadPrivate::start (arg=0x2b2a390) at thread/qthread_unix.cpp:285
#5  0x00007ffff14c4d8c in start_thread (arg=0x7fffe3aba700) at pthread_create.c:304
#6  0x00007ffff4bd539d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7ffff7fb5780 (LWP 11400)):
[KCrash Handler]
#6  Transaction::application (this=0x45445f6564) at /build/buildd/muon-1.1.0/installer/Transaction.cpp:49
#7  0x0000000000425b30 in ApplicationModel::updateTransactionProgress (this=0x2ad1570, trans=0x45445f6564, progress=<value optimized out>) at /build/buildd/muon-1.1.0/installer/ApplicationModel/ApplicationModel.cpp:185
#8  0x0000000000425d19 in ApplicationModel::qt_metacall (this=0x2ad1570, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffffffcc60) at /build/buildd/muon-1.1.0/obj-x86_64-linux-gnu/installer/ApplicationModel.moc:83
#9  0x00007ffff6209c18 in QMetaObject::activate (sender=0x747c90, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fffffffcc60) at kernel/qobject.cpp:3280
#10 0x000000000041af7e in ApplicationBackend::progress (this=<value optimized out>, _t1=0x45445f6564, _t2=4) at /build/buildd/muon-1.1.0/obj-x86_64-linux-gnu/installer/moc_ApplicationBackend.cpp:165
#11 0x000000000041b258 in ApplicationBackend::qt_metacall (this=0x747c90, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffffffcd80) at /build/buildd/muon-1.1.0/obj-x86_64-linux-gnu/installer/moc_ApplicationBackend.cpp:119
#12 0x00007ffff6209c18 in QMetaObject::activate (sender=0x7a2930, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fffffffcd80) at kernel/qobject.cpp:3280
#13 0x00007ffff74db7f6 in QApt::Backend::commitProgress(QString const&, int) () from /usr/lib/libqapt.so.1
#14 0x00007ffff74db999 in QApt::Backend::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libqapt.so.1
#15 0x00007ffff6209c18 in QMetaObject::activate (sender=0x693f90, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x7fffffffcea0) at kernel/qobject.cpp:3280
#16 0x00007ffff74dbfb3 in ?? () from /usr/lib/libqapt.so.1
#17 0x00007ffff74dc56a in ?? () from /usr/lib/libqapt.so.1
#18 0x00007ffff2f6504a in QDBusConnectionPrivate::deliverCall (this=0x7be970, object=0x693f90, msg=..., metaTypes=..., slotIdx=5) at qdbusintegrator.cpp:920
#19 0x00007ffff2f6ffbf in QDBusCallDeliveryEvent::placeMetaCall (this=<value optimized out>, object=<value optimized out>) at qdbusintegrator_p.h:103
#20 0x00007ffff6208aaa in QObject::event (this=0x693f90, e=<value optimized out>) at kernel/qobject.cpp:1219
#21 0x00007ffff55ba044 in QApplicationPrivate::notify_helper (this=0x674d00, receiver=0x693f90, e=0x2a715c0) at kernel/qapplication.cpp:4445
#22 0x00007ffff55be97a in QApplication::notify (this=<value optimized out>, receiver=0x693f90, e=0x2a715c0) at kernel/qapplication.cpp:4324
#23 0x00007ffff6c346b6 in KApplication::notify (this=0x7fffffffdd50, receiver=0x693f90, event=0x2a715c0) at ../../kdeui/kernel/kapplication.cpp:311
#24 0x00007ffff61f4b2c in QCoreApplication::notifyInternal (this=0x7fffffffdd50, receiver=0x693f90, event=0x2a715c0) at kernel/qcoreapplication.cpp:732
#25 0x00007ffff61f82b5 in sendEvent (receiver=0x0, event_type=0, data=0x64fe90) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#26 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x64fe90) at kernel/qcoreapplication.cpp:1373
#27 0x00007ffff621f8b3 in sendPostedEvents (s=0x681960) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#28 postEventSourceDispatch (s=0x681960) at kernel/qeventdispatcher_glib.cpp:277
#29 0x00007ffff0c00c1d in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#30 0x00007ffff0c01408 in ?? () from /lib/libglib-2.0.so.0
#31 0x00007ffff0c01699 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#32 0x00007ffff621fa4f in QEventDispatcherGlib::processEvents (this=0x64f9a0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:415
#33 0x00007ffff565feee in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#34 0x00007ffff61f3f12 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#35 0x00007ffff61f414c in QEventLoop::exec (this=0x7fffffffdce0, flags=...) at kernel/qeventloop.cpp:201
#36 0x00007ffff61f855b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#37 0x000000000041b680 in main (argc=1, argv=<value optimized out>) at /build/buildd/muon-1.1.0/installer/main.cpp:60
Comment 3 Jonathan Thomas 2011-02-13 17:56:32 UTC
Git commit 709740a9c24ab629ccbe33e7c77b0becb12a7f4a by Jonathan Thomas.
Committed on 13/02/2011 at 17:54.
Pushed by jmthomas into branch 'master'.

Don't crash if we get progress updates for transactions that have since been removed from the transaction queue.
BUG:266173

M  +1    -2    installer/ApplicationBackend.cpp     
M  +2    -1    installer/ApplicationModel/ApplicationExtender.cpp     
M  +7    -0    installer/ApplicationModel/ApplicationModel.cpp     

http://commits.kde.org/muon/709740a9c24ab629ccbe33e7c77b0becb12a7f4a
Comment 4 Jonathan Thomas 2011-02-13 17:56:54 UTC
Git commit bb5867217451368f3a05cc440d573fa73360854b by Jonathan Thomas.
Committed on 13/02/2011 at 17:54.
Pushed by jmthomas into branch '1.1'.

Don't crash if we get progress updates for transactions that have since been removed from the transaction queue.
BUG:266173

M  +1    -2    installer/ApplicationBackend.cpp     
M  +2    -1    installer/ApplicationModel/ApplicationExtender.cpp     
M  +7    -0    installer/ApplicationModel/ApplicationModel.cpp     

http://commits.kde.org/muon/bb5867217451368f3a05cc440d573fa73360854b