Bug 246799 - muon crashes when selecting ada-mode
Summary: muon crashes when selecting ada-mode
Status: RESOLVED FIXED
Alias: None
Product: muon
Classification: Applications
Component: libqapt (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Jonathan Thomas
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-08-05 13:42 UTC by Philip Muškovac
Modified: 2010-08-05 16:31 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Patch to fix crashes on versionless packages (756 bytes, patch)
2010-08-05 15:50 UTC, Jonathan Thomas
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Philip Muškovac 2010-08-05 13:42:38 UTC
Application: muon (0.5.0)
KDE Platform Version: 4.5.00 (KDE 4.5.0)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-13-generic x86_64
Distribution: Ubuntu maverick (development branch)

-- Information about the crash:
- What I was doing when the application crashed:
1) open muon
2) select 'Editors' category
3) select 'ada-mode'

actually it seems to crash when selecting any package that is pinned down to -1 and thus has no installation candidate

- Custom settings of the application:
ada-mode is only available on debian stable that I have in my sources.list and pinned down to -1
ada-mode:
  Installed: (none)
  Candidate: (none)
  Version table:
     3.6-2 0
         -1 http://ftp.de.debian.org/debian/ stable/main amd64 Packages

muon:
  Installed: 0.5.0-0ubuntu1~ppa1
  Candidate: 0.5.0-0ubuntu1~ppa1
  Version table:
 *** 0.5.0-0ubuntu1~ppa1 0
        500 http://ppa.launchpad.net/echidnaman/qapt/ubuntu/ maverick/main amd64 Packages
        100 /var/lib/dpkg/status

libqapt0:
  Installed: 0.5.0-0ubuntu1
  Candidate: 0.5.0-0ubuntu1
  Version table:
 *** 0.5.0-0ubuntu1 0
        500 http://ftp-stud.hs-esslingen.de/ubuntu/ maverick/universe amd64 Packages
        100 /var/lib/dpkg/status

The crash can be reproduced every time.

-- Backtrace:
Application: Muon Package Manager (muon), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f6efef8f760 (LWP 7594))]

Thread 2 (Thread 0x7f6ee4455710 (LWP 7846)):
#0  0x00007f6efac64603 in *__GI___poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f6ef71ed1e9 in g_main_context_poll (context=0x279aad0, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>)
    at /build/buildd/glib2.0-2.25.11/glib/gmain.c:3063
#2  g_main_context_iterate (context=0x279aad0, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at /build/buildd/glib2.0-2.25.11/glib/gmain.c:2745
#3  0x00007f6ef71ed63c in g_main_context_iteration (context=0x279aad0, may_block=1) at /build/buildd/glib2.0-2.25.11/glib/gmain.c:2813
#4  0x00007f6efba5ebe6 in QEventDispatcherGlib::processEvents (this=0xd73940, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#5  0x00007f6efba31402 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#6  0x00007f6efba317ec in QEventLoop::exec (this=0x7f6ee4454db0, flags=) at kernel/qeventloop.cpp:201
#7  0x00007f6efb93c1dd in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#8  0x00007f6efba111a8 in QInotifyFileSystemWatcherEngine::run (this=0x7ca2f0) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00007f6efb93f15e in QThreadPrivate::start (arg=0x7ca2f0) at thread/qthread_unix.cpp:266
#10 0x00007f6efb6b4981 in start_thread (arg=<value optimized out>) at pthread_create.c:304
#11 0x00007f6efac70d6d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#12 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f6efef8f760 (LWP 7594)):
[KCrash Handler]
#6  0x00007f6ef7c84eb4 in pkgRecords::Lookup(pkgCache::VerFileIterator const&) () from /usr/lib/libapt-pkg.so.4.10
#7  0x00007f6efdbaf9b5 in QApt::Package::sourcePackage (this=0x2077da0) at /build/buildd/qapt-0.5.0/src/package.cpp:170
#8  0x0000000000430815 in TechnicalDetailsTab::refresh (this=0x84a1e0) at /build/buildd/muon-0.5.0/src/DetailsTabs/TechnicalDetailsTab.cpp:157
#9  0x00000000004263cd in DetailsWidget::setPackage (this=0x83ab80, package=0x2077da0) at /build/buildd/muon-0.5.0/src/DetailsWidget.cpp:80
#10 0x00000000004219b1 in ManagerWidget::qt_metacall (this=0x72b040, _c=QMetaObject::InvokeMetaMethod, _id=20524112, _a=0x7fff3fdc12d0)
    at /build/buildd/muon-0.5.0/obj-x86_64-linux-gnu/src/ManagerWidget.moc:87
#11 0x00007f6efba4a527 in QMetaObject::activate (sender=0x7cc3d0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x1392c50) at kernel/qobject.cpp:3280
#12 0x00007f6efd137025 in QAbstractItemView::clicked (this=0x138c220, _t1=<value optimized out>) at .moc/release-shared/moc_qabstractitemview.cpp:331
#13 0x00007f6efd146674 in QAbstractItemView::mouseReleaseEvent (this=0x7cc3d0, event=0x7fff3fdc2140) at itemviews/qabstractitemview.cpp:1789
#14 0x00007f6efcc4530e in QWidget::event (this=0x7cc3d0, event=0x7fff3fdc2140) at kernel/qwidget.cpp:8157
#15 0x00007f6efd00e0c6 in QFrame::event (this=0x7cc3d0, e=0x7fff3fdc2140) at widgets/qframe.cpp:557
#16 0x00007f6efd14734b in QAbstractItemView::viewportEvent (this=0x7cc3d0, event=0x7fff3fdc2140) at itemviews/qabstractitemview.cpp:1619
#17 0x00007f6efd1855a5 in QTreeView::viewportEvent (this=0x7cc3d0, event=0x7fff3fdc2140) at itemviews/qtreeview.cpp:1256
#18 0x00007f6efba31f07 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<value optimized out>, receiver=0x870030, event=0x7fff3fdc2140) at kernel/qcoreapplication.cpp:847
#19 0x00007f6efcbef65c in QApplicationPrivate::notify_helper (this=0x6a02d0, receiver=0x870030, e=0x7fff3fdc2140) at kernel/qapplication.cpp:4385
#20 0x00007f6efcbf59be in QApplication::notify (this=0x7fff3fdc2e40, receiver=0x870030, e=0x7fff3fdc2140) at kernel/qapplication.cpp:3952
#21 0x00007f6efe9aab06 in KApplication::notify (this=0x7fff3fdc2e40, receiver=0x870030, event=0x7fff3fdc2140) at ../../kdeui/kernel/kapplication.cpp:309
#22 0x00007f6efba326dc in QCoreApplication::notifyInternal (this=0x7fff3fdc2e40, receiver=0x870030, event=0x7fff3fdc2140) at kernel/qcoreapplication.cpp:732
#23 0x00007f6efcbf446e in QCoreApplication::sendEvent (receiver=0x870030, event=0x7fff3fdc2140, alienWidget=0x870030, nativeWidget=0x72bb40, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#24 QApplicationPrivate::sendMouseEvent (receiver=0x870030, event=0x7fff3fdc2140, alienWidget=0x870030, nativeWidget=0x72bb40, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at kernel/qapplication.cpp:3051
#25 0x00007f6efcc77265 in QETWidget::translateMouseEvent (this=0x72bb40, event=<value optimized out>) at kernel/qapplication_x11.cpp:4403
#26 0x00007f6efcc75b7c in QApplication::x11ProcessEvent (this=<value optimized out>, event=0x7fff3fdc2a60) at kernel/qapplication_x11.cpp:3536
#27 0x00007f6efcca2002 in x11EventSourceDispatch (s=0x698dc0, callback=<value optimized out>, user_data=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:146
#28 0x00007f6ef71e9522 in g_main_dispatch (context=0x697620) at /build/buildd/glib2.0-2.25.11/glib/gmain.c:2119
#29 g_main_context_dispatch (context=0x697620) at /build/buildd/glib2.0-2.25.11/glib/gmain.c:2672
#30 0x00007f6ef71ed488 in g_main_context_iterate (context=0x697620, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>)
    at /build/buildd/glib2.0-2.25.11/glib/gmain.c:2750
#31 0x00007f6ef71ed63c in g_main_context_iteration (context=0x697620, may_block=1) at /build/buildd/glib2.0-2.25.11/glib/gmain.c:2813
#32 0x00007f6efba5eb93 in QEventDispatcherGlib::processEvents (this=0x671a70, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#33 0x00007f6efcca196e in QGuiEventDispatcherGlib::processEvents (this=0x138c220, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#34 0x00007f6efba31402 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#35 0x00007f6efba317ec in QEventLoop::exec (this=0x7fff3fdc2d90, flags=) at kernel/qeventloop.cpp:201
#36 0x00007f6efba358bb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#37 0x0000000000414c9c in main (argc=<value optimized out>, argv=<value optimized out>) at /build/buildd/muon-0.5.0/src/main.cpp:54

Reported using DrKonqi
Comment 1 Philip Muškovac 2010-08-05 14:04:23 UTC
the relevant lines from the apt config:

sources.list:
deb http://ftp.de.debian.org/debian/ stable main contrib non-free
deb-src http://ftp.de.debian.org/debian/ stable main contrib non-free

preferences:
Package: *
Pin: release l=Debian
Pin-Priority: -1
Comment 2 Jonathan Thomas 2010-08-05 15:50:02 UTC
Created attachment 49838 [details]
Patch to fix crashes on versionless packages

Could you see if this patch against libqapt fixes things? Thanks.
Comment 3 Jonathan Thomas 2010-08-05 16:31:03 UTC
SVN commit 1159513 by jmthomas:

Don't crash grabbing the source package when a package has no candidate version due to pinning
BUG:246799


 M  +3 -0      package.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1159513