Bug 189223 - A Crash occured for me in KStars while using the observing list wizard.
Summary: A Crash occured for me in KStars while using the observing list wizard.
Status: RESOLVED FIXED
Alias: None
Product: kstars
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Akarsh Simha
URL:
Keywords:
: 266343 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-04-09 16:55 UTC by Prakash
Modified: 2011-07-19 00:05 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Crash backtrace (9.77 KB, application/octet-stream)
2009-09-27 17:36 UTC, Prakash
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Prakash 2009-04-09 16:55:29 UTC
Version:            (using Devel)
OS:                Linux
Installed from:    Compiled sources

This is the Backtrace of the crash.


Application: KStars (kstars), signal SIGABRT

Thread 1 (Thread 0xb4c5c700 (LWP 20299)):
[KCrash Handler]
#6  0xb7f96424 in __kernel_vsyscall ()
#7  0xb5dd5640 in raise () from /lib/i686/cmov/libc.so.6
#8  0xb5dd7008 in abort () from /lib/i686/cmov/libc.so.6
#9  0xb6c0c4ed in qt_message_output (msgType=QtFatalMsg, buf=0xb5199f0 "ASSERT failure in QList<T>::take: \"index out of range\", file /home/prakash/qt-copy/include/QtCore/qlist.h, line 411")
    at global/qglobal.cpp:2006
#10 0xb6c0c5d1 in qFatal (msg=0xb6d5a248 "ASSERT failure in %s: \"%s\", file %s, line %d") at global/qglobal.cpp:2201
#11 0xb6c0c67c in qt_assert_x (where=0x82a6f21 "QList<T>::take", what=0x82a6f01 "index out of range", file=0x82a6ed4 "/home/prakash/qt-copy/include/QtCore/qlist.h", line=411)
    at global/qglobal.cpp:1785
#12 0x0813b4f0 in QList<SkyObject*>::takeAt (this=0xbfbb1e98, i=-1) at /home/prakash/qt-copy/include/QtCore/qlist.h:411
#13 0x081360ac in ObsListWizard::applyObservableFilter (this=0xbfbb1e80, o=0xa78b5d0, doBuildList=true, doAdjustCount=true)
    at /home/prakash/devel/kde/src/4/KDE/kdeedu/kstars/kstars/tools/obslistwizard.cpp:607
#14 0x08138a7c in ObsListWizard::applyFilters (this=0xbfbb1e80, doBuildList=true) at /home/prakash/devel/kde/src/4/KDE/kdeedu/kstars/kstars/tools/obslistwizard.cpp:497
#15 0x0813b7e5 in ObsListWizard::slotApplyFilters (this=0xbfbb1e80) at /home/prakash/devel/kde/src/4/KDE/kdeedu/kstars/kstars/tools/obslistwizard.h:71
#16 0x081397e2 in ObsListWizard::qt_metacall (this=0xbfbb1e80, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0xbfbb0cb8)
    at /home/prakash/devel/kde/build/4/KDE/kdeedu/kstars/kstars/obslistwizard.moc:141
#17 0xb6d1dc58 in QMetaObject::activate (sender=0xbfbb1e80, from_signal_index=45, to_signal_index=45, argv=0x0) at kernel/qobject.cpp:3069
#18 0xb6d1e8e2 in QMetaObject::activate (sender=0xbfbb1e80, m=0x82e88ac, local_signal_index=9, argv=0x0) at kernel/qobject.cpp:3143
#19 0xb6fa53e5 in KDialog::okClicked (this=0xbfbb1e80) at /home/prakash/devel/kde/build/4/KDE/kdelibs/kdeui/kdialog.moc:249
#20 0xb6fa6a33 in KDialog::slotButtonClicked (this=0xbfbb1e80, button=4) at /home/prakash/devel/kde/src/4/KDE/kdelibs/kdeui/dialogs/kdialog.cpp:847
#21 0xb6fa90cb in KDialog::qt_metacall (this=0xbfbb1e80, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0xbfbb0e4c) at /home/prakash/devel/kde/build/4/KDE/kdelibs/kdeui/kdialog.moc:182
#22 0x081396fc in ObsListWizard::qt_metacall (this=0xbfbb1e80, _c=QMetaObject::InvokeMetaMethod, _id=69, _a=0xbfbb0e4c)
    at /home/prakash/devel/kde/build/4/KDE/kdeedu/kstars/kstars/obslistwizard.moc:124
#23 0xb6d1dc58 in QMetaObject::activate (sender=0xb3987f8, from_signal_index=4, to_signal_index=4, argv=0xbfbb0e4c) at kernel/qobject.cpp:3069
#24 0xb6d1e8e2 in QMetaObject::activate (sender=0xb3987f8, m=0xb6df8a58, local_signal_index=0, argv=0xbfbb0e4c) at kernel/qobject.cpp:3143
#25 0xb6d20b93 in QSignalMapper::mapped (this=0xb3987f8, _t1=4) at .moc/release-shared/moc_qsignalmapper.cpp:95
#26 0xb6d2141d in QSignalMapper::map (this=0xb3987f8, sender=0xb3bbb80) at kernel/qsignalmapper.cpp:266
#27 0xb6d2160e in QSignalMapper::map (this=0xb3987f8) at kernel/qsignalmapper.cpp:257
#28 0xb6d21f6b in QSignalMapper::qt_metacall (this=0xb3987f8, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfbb0fcc) at .moc/release-shared/moc_qsignalmapper.cpp:81
#29 0xb6d1dc58 in QMetaObject::activate (sender=0xb3bbb80, from_signal_index=29, to_signal_index=30, argv=0xbfbb0fcc) at kernel/qobject.cpp:3069
#30 0xb6d1e090 in QMetaObject::activate (sender=0xb3bbb80, m=0xb69e2dc4, from_local_signal_index=2, to_local_signal_index=3, argv=0xbfbb0fcc) at kernel/qobject.cpp:3163
#31 0xb6800ac1 in QAbstractButton::clicked (this=0xb3bbb80, _t1=false) at .moc/release-shared/moc_qabstractbutton.cpp:200
#32 0xb652bca9 in QAbstractButtonPrivate::emitClicked (this=0xb4ee060) at widgets/qabstractbutton.cpp:543
#33 0xb652d904 in QAbstractButtonPrivate::click (this=0xb4ee060) at widgets/qabstractbutton.cpp:536
#34 0xb652db96 in QAbstractButton::mouseReleaseEvent (this=0xb3bbb80, e=0xbfbb167c) at widgets/qabstractbutton.cpp:1115
#35 0xb61c3143 in QWidget::event (this=0xb3bbb80, event=0xbfbb167c) at kernel/qwidget.cpp:7516
#36 0xb652bb4e in QAbstractButton::event (this=0xb3bbb80, e=0xbfbb167c) at widgets/qabstractbutton.cpp:1077
#37 0xb65d6b30 in QPushButton::event (this=0xb3bbb80, e=0xbfbb167c) at widgets/qpushbutton.cpp:662
#38 0xb616c5ec in QApplicationPrivate::notify_helper (this=0x90cf780, receiver=0xb3bbb80, e=0xbfbb167c) at kernel/qapplication.cpp:4084
#39 0xb6175211 in QApplication::notify (this=0xbfbb34c8, receiver=0xb3bbb80, e=0xbfbb167c) at kernel/qapplication.cpp:3786
#40 0xb703b03d in KApplication::notify (this=0xbfbb34c8, receiver=0xb3bbb80, event=0xbfbb167c) at /home/prakash/devel/kde/src/4/KDE/kdelibs/kdeui/kernel/kapplication.cpp:307
#41 0xb6d07b1b in QCoreApplication::notifyInternal (this=0xbfbb34c8, receiver=0xb3bbb80, event=0xbfbb167c) at kernel/qcoreapplication.cpp:602
#42 0xb617427e in QApplicationPrivate::sendMouseEvent (receiver=0xb3bbb80, event=0xbfbb167c, alienWidget=0xb3bbb80, nativeWidget=0xbfbb1e80, buttonDown=0xb69efc20, lastMouseReceiver=@0xb69efc24)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:216
#43 0xb61e3835 in QETWidget::translateMouseEvent (this=0xbfbb1e80, event=0xbfbb1bdc) at kernel/qapplication_x11.cpp:4425
#44 0xb61e256d in QApplication::x11ProcessEvent (this=0xbfbb34c8, event=0xbfbb1bdc) at kernel/qapplication_x11.cpp:3543
#45 0xb620be52 in x11EventSourceDispatch (s=0x90d2900, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#46 0xb50e9718 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#47 0xb50ecc7b in ?? () from /usr/lib/libglib-2.0.so.0
#48 0x090d1a58 in ?? ()
#49 0x00000000 in ?? ()
Comment 1 Akarsh Simha 2009-09-27 16:00:34 UTC
Prakash,

Could you please confirm that this bug is still present? If so, can you explain how to reproduce it?
Comment 2 Prakash 2009-09-27 17:36:55 UTC
Created attachment 37199 [details]
Crash backtrace
Comment 3 Prakash 2009-09-27 17:37:26 UTC
I could reproduce the crash now, the list was showing "4,294,966,847" objects to be added.
I just kept clicking update count at each step.
And when I clicked on okay, I got the crash. 
I've attached the backtrace.
Comment 4 Jasem Mutlaq 2010-08-29 23:12:03 UTC
I can confirm the crash. Will investigate soon.
Comment 5 Jasem Mutlaq 2010-08-30 02:51:07 UTC
SVN commit 1169737 by mutlaqja:

Fixing a crash in observing list wizard due to over-decrementing objects by the filters. Since this was an unsigned integer, it rolls back to a value of about 4,294,966,847 and causes a crash. I updated the wizard to be much more efficient in elliminating targets without putting heavy load on the system. Furthermore, I added a time limit range as suggested by Fabien to limit the observing period.

BUG: 189223
BUG: 212731
CCMAIL: kstars-devel@kde.org



 M  +296 -83   obslistwizard.cpp  
 M  +3 -2      obslistwizard.h  
 M  +123 -259  obslistwizard.ui  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1169737
Comment 6 Christoph Feck 2011-07-19 00:05:54 UTC
*** Bug 266343 has been marked as a duplicate of this bug. ***