Bug 268876 - Muon-Update crash after clicking on item list
Summary: Muon-Update crash after clicking on item list
Status: RESOLVED FIXED
Alias: None
Product: Discover
Classification: Applications
Component: Updates (interactive) (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Jonathan Thomas
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-19 10:59 UTC by wiewiur
Modified: 2016-03-02 13:25 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 wiewiur 2011-03-19 10:59:43 UTC
Application: muon-updater (1.1.65 "Caustic Carrionite")
KDE Platform Version: 4.6.1 (4.6.1)
Qt Version: 4.7.0
Operating System: Linux 2.6.37.2-ext73-f1-12.5-k8-ags-bfq-cfs i686
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:

I clicked on item on package updates list. Clicing on not every item is cousing crash -  only clickking on some of them.

The crash can be reproduced every time.

-- Backtrace:
Application: Muon menedżer aktualizacji  (muon-updater), signal: Aborted
[Current thread is 1 (Thread 0xb4f85980 (LWP 4277))]

Thread 2 (Thread 0xb1466b70 (LWP 4278)):
#0  0xb789c424 in __kernel_vsyscall ()
#1  0xb5d44df6 in poll () from /lib/libc.so.6
#2  0xb54e5a1b in g_poll () from /lib/libglib-2.0.so.0
#3  0xb54d843c in ?? () from /lib/libglib-2.0.so.0
#4  0xb54d8848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0xb60ba59f in QEventDispatcherGlib::processEvents (this=0x85c4878, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#6  0xb608a609 in QEventLoop::processEvents (this=0xb1466290, flags=) at kernel/qeventloop.cpp:149
#7  0xb608aa8a in QEventLoop::exec (this=0xb1466290, flags=...) at kernel/qeventloop.cpp:201
#8  0xb5f86b7e in QThread::exec (this=0x8935810) at thread/qthread.cpp:490
#9  0xb606935b in QInotifyFileSystemWatcherEngine::run (this=0x8935810) at io/qfilesystemwatcher_inotify.cpp:248
#10 0xb5f89df9 in QThreadPrivate::start (arg=0x8935810) at thread/qthread_unix.cpp:266
#11 0xb5f13cc9 in start_thread () from /lib/libpthread.so.0
#12 0xb5d5369e in clone () from /lib/libc.so.6

Thread 1 (Thread 0xb4f85980 (LWP 4277)):
[KCrash Handler]
#7  0xb789c424 in __kernel_vsyscall ()
#8  0xb5cad941 in raise () from /lib/libc.so.6
#9  0xb5cb0e42 in abort () from /lib/libc.so.6
#10 0xb5f802dc in qt_message_output (msgType=QtFatalMsg, buf=0x8d9dcb8 "ASSERT: \"i >= 0 && i < size()\" in file /usr/include/qt4/QtCore/qstring.h, line 701") at global/qglobal.cpp:2259
#11 0xb5f804aa in qt_message (msgType=<value optimized out>, msg=0xb60f8a7c "ASSERT: \"%s\" in file %s, line %d", ap=0xbfcacc34 "\217\353Y\267x\352Y\267\275\002") at global/qglobal.cpp:2305
#12 0xb5f805b9 in qFatal (msg=0xb60f8a7c "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2488
#13 0xb5f80645 in qt_assert (assertion=0xb759eb8f "i >= 0 && i < size()", file=0xb759ea78 "/usr/include/qt4/QtCore/qstring.h", line=701) at global/qglobal.cpp:2004
#14 0xb758eb68 in at (this=0x8af77a8) at /usr/include/qt4/QtCore/qstring.h:701
#15 QApt::Package::supportedUntil (this=0x8af77a8) at /build/buildd/qapt-1.1.65/src/package.cpp:617
#16 0xb787585b in MainTab::refresh (this=0x8653108) at /build/buildd/muon-1.1.65/libmuon/DetailsTabs/MainTab.cpp:225
#17 0xb785ddac in DetailsWidget::setPackage (this=0x876dd60, package=0x8af77a8) at /build/buildd/muon-1.1.65/libmuon/DetailsWidget.cpp:92
#18 0xb786bf6f in PackageWidget::packageActivated (this=0x8645018, index=...) at /build/buildd/muon-1.1.65/libmuon/PackageModel/PackageWidget.cpp:270
#19 0xb7871207 in PackageWidget::qt_metacall (this=0x8645018, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfcad828) at /build/buildd/muon-1.1.65/obj-i686-linux-gnu/libmuon/PackageWidget.moc:119
#20 0x0804f5cf in UpdaterWidget::qt_metacall (this=0x8645018, _c=QMetaObject::InvokeMetaMethod, _id=31, _a=0xbfcad828) at /build/buildd/muon-1.1.65/obj-i686-linux-gnu/updater/UpdaterWidget.moc:68
#21 0xb60918ca in QMetaObject::metacall (object=0x8645018, cl=4277, idx=31, argv=0xbfcad828) at kernel/qmetaobject.cpp:237
#22 0xb60a46ad in QMetaObject::activate (sender=0x8668b50, m=0xb7885fd4, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3280
#23 0xb7869143 in PackageView::currentPackageChanged (this=0x8668b50, _t1=...) at /build/buildd/muon-1.1.65/obj-i686-linux-gnu/libmuon/PackageView.moc:100
#24 0xb78694fb in PackageView::currentChanged (this=0x8668b50, current=..., previous=...) at /build/buildd/muon-1.1.65/libmuon/PackageModel/PackageView.cpp:48
#25 0xb78692cf in PackageView::qt_metacall (this=0x8668b50, _c=QMetaObject::InvokeMetaMethod, _id=90, _a=0xbfcad994) at /build/buildd/muon-1.1.65/obj-i686-linux-gnu/libmuon/PackageView.moc:86
#26 0xb60918ca in QMetaObject::metacall (object=0x8668b50, cl=4277, idx=90, argv=0xbfcad994) at kernel/qmetaobject.cpp:237
#27 0xb60a46ad in QMetaObject::activate (sender=0x864ac20, m=0xb6ff3a50, local_signal_index=1, argv=0x0) at kernel/qobject.cpp:3280
#28 0xb6c92319 in QItemSelectionModel::currentChanged (this=0x864ac20, _t1=..., _t2=...) at .moc/release-shared/moc_qitemselectionmodel.cpp:159
#29 0xb6c924b2 in QItemSelectionModel::setCurrentIndex (this=0x864ac20, index=..., command=...) at itemviews/qitemselectionmodel.cpp:1156
#30 0xb6c3c9cc in QAbstractItemView::mousePressEvent (this=0x8668b50, event=0xbfcae460) at itemviews/qabstractitemview.cpp:1657
#31 0xb6c88157 in QTreeView::mousePressEvent (this=0x8668b50, event=0xbfcae460) at itemviews/qtreeview.cpp:1818
#32 0xb66c5dec in QWidget::event (this=0x8668b50, event=0xbfcae460) at kernel/qwidget.cpp:8183
#33 0xb6ae7763 in QFrame::event (this=0x8668b50, e=0xbfcae460) at widgets/qframe.cpp:557
#34 0xb6b84a82 in QAbstractScrollArea::viewportEvent (this=0x10b5, e=0x6) at widgets/qabstractscrollarea.cpp:1043
#35 0xb6c410f7 in QAbstractItemView::viewportEvent (this=0x8668b50, event=0xbfcae460) at itemviews/qabstractitemview.cpp:1619
#36 0xb6c83883 in QTreeView::viewportEvent (this=0x8668b50, event=0xbfcae460) at itemviews/qtreeview.cpp:1256
#37 0xb6b874d5 in viewportEvent (this=0x8665340, o=0x86607c0, e=0xbfcae460) at widgets/qabstractscrollarea_p.h:100
#38 QAbstractScrollAreaFilter::eventFilter (this=0x8665340, o=0x86607c0, e=0xbfcae460) at widgets/qabstractscrollarea_p.h:116
#39 0xb608b29a in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=0x85c7678, receiver=0x86607c0, event=0xbfcae460) at kernel/qcoreapplication.cpp:847
#40 0xb6667fb9 in QApplicationPrivate::notify_helper (this=0x85c7678, receiver=0x86607c0, e=0xbfcae460) at kernel/qapplication.cpp:4392
#41 0xb666ec2e in QApplication::notify (this=0xbfcaed1c, receiver=0x86607c0, e=0xbfcae460) at kernel/qapplication.cpp:3959
#42 0xb720f7da in KApplication::notify (this=0xbfcaed1c, receiver=0x86607c0, event=0xbfcae460) at ../../kdeui/kernel/kapplication.cpp:311
#43 0xb608bb3b in QCoreApplication::notifyInternal (this=0xbfcaed1c, receiver=0x86607c0, event=0xbfcae460) at kernel/qcoreapplication.cpp:732
#44 0xb666d094 in sendEvent (receiver=0x86607c0, event=0xbfcae460, alienWidget=0x86607c0, nativeWidget=0x8626010, buttonDown=0xb70023c0, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#45 QApplicationPrivate::sendMouseEvent (receiver=0x86607c0, event=0xbfcae460, alienWidget=0x86607c0, nativeWidget=0x8626010, buttonDown=0xb70023c0, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3058
#46 0xb66fbd10 in QETWidget::translateMouseEvent (this=0x8626010, event=0xbfcae97c) at kernel/qapplication_x11.cpp:4403
#47 0xb66fb151 in QApplication::x11ProcessEvent (this=0xbfcaed1c, event=0xbfcae97c) at kernel/qapplication_x11.cpp:3414
#48 0xb672a36a in x11EventSourceDispatch (s=0x85c4800, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#49 0xb54d4855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#50 0xb54d8668 in ?? () from /lib/libglib-2.0.so.0
#51 0xb54d8848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#52 0xb60ba565 in QEventDispatcherGlib::processEvents (this=0x85a3bc8, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#53 0xb6729be5 in QGuiEventDispatcherGlib::processEvents (this=0x85a3bc8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#54 0xb608a609 in QEventLoop::processEvents (this=0xbfcaec74, flags=) at kernel/qeventloop.cpp:149
#55 0xb608aa8a in QEventLoop::exec (this=0xbfcaec74, flags=...) at kernel/qeventloop.cpp:201
#56 0xb608f00f in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#57 0xb6666e07 in QApplication::exec () at kernel/qapplication.cpp:3672
#58 0x0804dc21 in main (argc=1, argv=0xbfcaee44) at /build/buildd/muon-1.1.65/updater/main.cpp:56

Reported using DrKonqi
Comment 1 Jonathan Thomas 2011-03-19 13:24:20 UTC
Git commit 1328dced4c680e524ccadaa0550c9dc706e9936a by Jonathan Thomas.
Committed on 19/03/2011 at 13:23.
Pushed by jmthomas into branch 'master'.

Don't check if our fallback is empty, bur rather the string itself. Otherwise we can end up with an empty string that causes crashes.

BUG:268876

M  +1    -1    src/package.cpp     

http://commits.kde.org/libqapt/1328dced4c680e524ccadaa0550c9dc706e9936a