Bug 240256

Summary: Choqok crashes on Friends list update
Product: [Applications] choqok Reporter: smo <smoooms>
Component: generalAssignee: Mehrdad Momeny <mehrdad.momeny>
Status: RESOLVED FIXED    
Severity: crash CC: kde, mdkcore
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Debian testing   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description smo 2010-05-31 18:56:46 UTC
Application: choqok (0.9.75)
KDE Platform Version: 4.4.3 (KDE 4.4.3)
Qt Version: 4.6.2
Operating System: Linux 2.6.32-3-amd64 x86_64
Distribution: Debian GNU/Linux testing (squeeze)

-- Information about the crash:
Choqok crashes everytime I select "Actions" -> "Update Friends List".

The crash can be reproduced every time.

 -- Backtrace:
Application: Choqok (choqok), signal: Segmentation fault
The current source language is "auto; currently c".
[KCrash Handler]
#5  QString (this=0x0) at /usr/include/qt4/QtCore/qstring.h:714
#6  Choqok::Account::username (this=0x0) at /stuff/Entwicklung/choqok/choqok/libchoqok/account.cpp:90
#7  0x00007f5198b658a1 in TwitterApiMicroBlog::requestFriendsScreenName (this=0x1fd78d0, theAccount=<value optimized out>, page=1)
    at /stuff/Entwicklung/choqok/choqok/helperlibs/twitterapihelper/twitterapimicroblog.cpp:634
#8  0x00007f5198b625a8 in TwitterApiMicroBlog::listFriendsUsername (this=0x1fd78d0, theAccount=0x0) at /stuff/Entwicklung/choqok/choqok/helperlibs/twitterapihelper/twitterapimicroblog.cpp:626
#9  0x00007f5198b629f7 in TwitterApiMicroBlog::slotUpdateFriendsList (this=0x1fd78d0) at /stuff/Entwicklung/choqok/choqok/helperlibs/twitterapihelper/twitterapimicroblog.cpp:1102
#10 0x00007f5198b71907 in TwitterApiMicroBlog::qt_metacall (this=0x1fd78d0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffd8094890)
    at /stuff/Entwicklung/choqok/choqok/build/helperlibs/twitterapihelper/twitterapimicroblog.moc:148
#11 0x00007f51a665bc4f in QMetaObject::activate (sender=0x2170ff0, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x5a2d0) at kernel/qobject.cpp:3293
#12 0x00007f51a59e1702 in QAction::triggered (this=0x7fffd8094630, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#13 0x00007f51a59e377b in QAction::activate (this=0x2170ff0, event=<value optimized out>) at kernel/qaction.cpp:1255
#14 0x00007f51a5e215bd in QMenuPrivate::activateCausedStack (this=<value optimized out>, causedStack=..., action=0x2170ff0, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1011
#15 0x00007f51a5e2713a in QMenuPrivate::activateAction (this=0x21703c0, action=0x2170ff0, action_e=QAction::Trigger, self=<value optimized out>) at widgets/qmenu.cpp:1103
#16 0x00007f51a5a3dc42 in QWidget::event (this=0x200cc10, event=0x7fffd80954c0) at kernel/qwidget.cpp:7998
#17 0x00007f51a5e292fb in QMenu::event (this=0x200cc10, e=0x7fffd80954c0) at widgets/qmenu.cpp:2414
#18 0x00007f51a59e78fc in QApplicationPrivate::notify_helper (this=0x1ec9440, receiver=0x200cc10, e=0x7fffd80954c0) at kernel/qapplication.cpp:4300
#19 0x00007f51a59ee5ab in QApplication::notify (this=0x7fffd8097710, receiver=0x200cc10, e=0x7fffd80954c0) at kernel/qapplication.cpp:3865
#20 0x00007f51a7e94366 in KApplication::notify (this=0x7fffd8097710, receiver=0x200cc10, event=0x7fffd80954c0) at ../../kdeui/kernel/kapplication.cpp:302
#21 0x00007f51a6648f1c in QCoreApplication::notifyInternal (this=0x7fffd8097710, receiver=0x200cc10, event=0x7fffd80954c0) at kernel/qcoreapplication.cpp:704
#22 0x00007f51a59ed78e in QCoreApplication::sendEvent (receiver=0x200cc10, event=0x7fffd80954c0, alienWidget=0x0, nativeWidget=0x200cc10, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#23 QApplicationPrivate::sendMouseEvent (receiver=0x200cc10, event=0x7fffd80954c0, alienWidget=0x0, nativeWidget=0x200cc10, buttonDown=<value optimized out>, lastMouseReceiver=<value optimized out>, 
    spontaneous=true) at kernel/qapplication.cpp:2965
#24 0x00007f51a5a6d84d in QETWidget::translateMouseEvent (this=0x200cc10, event=<value optimized out>) at kernel/qapplication_x11.cpp:4302
#25 0x00007f51a5a6bd3c in QApplication::x11ProcessEvent (this=<value optimized out>, event=0x7fffd8095c40) at kernel/qapplication_x11.cpp:3501
#26 0x00007f51a5a977e2 in x11EventSourceDispatch (s=0x1eccce0, callback=<value optimized out>, user_data=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:146
#27 0x00007f51a15656c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#28 0x00007f51a1569538 in ?? () from /lib/libglib-2.0.so.0
#29 0x00007f51a15696ec in g_main_context_iteration () from /lib/libglib-2.0.so.0
#30 0x00007f51a6672373 in QEventDispatcherGlib::processEvents (this=0x1e9dc40, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#31 0x00007f51a5a973de in QGuiEventDispatcherGlib::processEvents (this=0x7fffd8094630, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#32 0x00007f51a6647842 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#33 0x00007f51a6647c1c in QEventLoop::exec (this=0x7fffd8095f60, flags=) at kernel/qeventloop.cpp:201
#34 0x00007f51a5e24705 in QMenu::exec (this=0x200cc10, p=<value optimized out>, action=0x0) at widgets/qmenu.cpp:2063
#35 0x00007f51a5e338d2 in QPushButtonPrivate::_q_popupPressed (this=0x1ebed90) at widgets/qpushbutton.cpp:588
#36 0x00007f51a5e34dfa in QPushButton::qt_metacall (this=0x1ebe210, _c=QMetaObject::InvokeMetaMethod, _id=-670480944, _a=0x7fffd80960f0) at .moc/release-shared/moc_qpushbutton.cpp:80
#37 0x00007f51a7f7ca65 in KPushButton::qt_metacall (this=0x7fffd8094630, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x5a2d0) at ./kpushbutton.moc:80
#38 0x00007f51a665bc4f in QMetaObject::activate (sender=0x1ebe210, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x5a2d0) at kernel/qobject.cpp:3293
#39 0x00007f51a5d9b68e in QAbstractButtonPrivate::emitPressed (this=0x1ebed90) at widgets/qabstractbutton.cpp:560
#40 0x00007f51a5d9b86c in QAbstractButton::mousePressEvent (this=0x1ebe210, e=0x7fffd8096bc0) at widgets/qabstractbutton.cpp:1096
#41 0x00007f51a5a3dc29 in QWidget::event (this=0x1ebe210, event=0x7fffd8096bc0) at kernel/qwidget.cpp:7994
#42 0x00007f51a59e78fc in QApplicationPrivate::notify_helper (this=0x1ec9440, receiver=0x1ebe210, e=0x7fffd8096bc0) at kernel/qapplication.cpp:4300
#43 0x00007f51a59ee5ab in QApplication::notify (this=0x7fffd8097710, receiver=0x1ebe210, e=0x7fffd8096bc0) at kernel/qapplication.cpp:3865
#44 0x00007f51a7e94366 in KApplication::notify (this=0x7fffd8097710, receiver=0x1ebe210, event=0x7fffd8096bc0) at ../../kdeui/kernel/kapplication.cpp:302
#45 0x00007f51a6648f1c in QCoreApplication::notifyInternal (this=0x7fffd8097710, receiver=0x1ebe210, event=0x7fffd8096bc0) at kernel/qcoreapplication.cpp:704
#46 0x00007f51a59ed78e in QCoreApplication::sendEvent (receiver=0x1ebe210, event=0x7fffd8096bc0, alienWidget=0x1ebe210, nativeWidget=0x1fc8290, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#47 QApplicationPrivate::sendMouseEvent (receiver=0x1ebe210, event=0x7fffd8096bc0, alienWidget=0x1ebe210, nativeWidget=0x1fc8290, buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at kernel/qapplication.cpp:2965
#48 0x00007f51a5a6d3cb in QETWidget::translateMouseEvent (this=0x1fc8290, event=<value optimized out>) at kernel/qapplication_x11.cpp:4368
#49 0x00007f51a5a6bd3c in QApplication::x11ProcessEvent (this=<value optimized out>, event=0x7fffd8097340) at kernel/qapplication_x11.cpp:3501
#50 0x00007f51a5a977e2 in x11EventSourceDispatch (s=0x1eccce0, callback=<value optimized out>, user_data=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:146
#51 0x00007f51a15656c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#52 0x00007f51a1569538 in ?? () from /lib/libglib-2.0.so.0
#53 0x00007f51a15696ec in g_main_context_iteration () from /lib/libglib-2.0.so.0
#54 0x00007f51a6672373 in QEventDispatcherGlib::processEvents (this=0x1e9dc40, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#55 0x00007f51a5a973de in QGuiEventDispatcherGlib::processEvents (this=0x7fffd8094630, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#56 0x00007f51a6647842 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#57 0x00007f51a6647c1c in QEventLoop::exec (this=0x7fffd8097660, flags=) at kernel/qeventloop.cpp:201
#58 0x00007f51a664b95b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#59 0x000000000040e458 in main (argc=<value optimized out>, argv=<value optimized out>) at /stuff/Entwicklung/choqok/choqok/choqok/main.cpp:56

Reported using DrKonqi
Comment 1 Nicolas L. 2010-06-01 11:49:38 UTC
reproduce, i will try to look this bug
Comment 2 Nicolas L. 2010-06-01 13:28:57 UTC
can i commit this ?

Index: /home/niconico/SVN/choqok/helperlibs/twitterapihelper/twitterapimicroblog.cpp
===================================================================
--- /home/niconico/SVN/choqok/helperlibs/twitterapihelper/twitterapimicroblog.cpp       (révision 1133230)
+++ /home/niconico/SVN/choqok/helperlibs/twitterapihelper/twitterapimicroblog.cpp       (copie de travail)
@@ -623,7 +623,9 @@
 void TwitterApiMicroBlog::listFriendsUsername(TwitterApiAccount* theAccount)
 {
     d->friendsList.clear();
-    requestFriendsScreenName(theAccount);
+    if ( theAccount ) {
+        requestFriendsScreenName(theAccount);
+    }
 }
 
 void TwitterApiMicroBlog::requestFriendsScreenName(TwitterApiAccount* theAccount, int page)
Comment 3 Rodrigo Gonçalves de Oliveira 2010-06-01 14:22:01 UTC
It seems ok for me
Comment 4 Nicolas L. 2010-06-01 14:24:19 UTC
SVN commit 1133279 by nlecureuil:

Fix crash on Friends list update
CCBUG: 240256


 M  +2 -0      twitterapimicroblog.cpp  


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