Bug 313080 - Crash upon dialog when Jabber connection is dropped.
Summary: Crash upon dialog when Jabber connection is dropped.
Status: RESOLVED DUPLICATE of bug 323907
Alias: None
Product: kopete
Classification: Unmaintained
Component: Jabber Plugin (show other bugs)
Version: 1.2.5
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Kopete Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-11 14:35 UTC by Xuân Baldauf
Modified: 2013-08-23 03:42 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Xuân Baldauf 2013-01-11 14:35:43 UTC
When a Jabber-specific dialog (e.g. asking for a password for a Jabber chatroom) is open and the network connection to the Jabber server is dropped, then completing this dialog triggers a crash.

Reproducible: Always

Steps to Reproduce:
1. Connect to a Jabber server.
2. Open a chat room with a password, such that everybody who joins the chatroom has to supply the password.
3. Join the chatroom, supply the password.
4. Disconnect, but keep the chat window open.
5. Reconnect to the Jabber server. Kopete will automatically attempt to re-join the chatroom.
6. Because the chatroom requires a password, Kopete will prompt for the password.
7. Now disconnect the TCP connection to the Jabber server. (You could also go offline or go into standby mode and resume.)
Actual Results:  
Kopete crashes with this stack trace:

Thread 1 (Thread 0x7ff80ca24780 (LWP 3213)):
[KCrash Handler]
#6  0x00007ff7f4fe21c6 in XMPP::Client::streamReadyRead (this=0x4a122a0) at /usr/src/debug/kdenetwork-4.8.5/kopete/protocols/jabber/libiris/iris/xmpp/xmpp-im/client.cpp:518
#7  0x00007ff80a49cf5f in QMetaObject::activate (sender=0x47cb930, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3556
#8  0x00007ff80a49b0ae in QObject::event (this=0x47cb930, e=<optimized out>) at kernel/qobject.cpp:1204
#9  0x00007ff8095b674c in QApplicationPrivate::notify_helper (this=this@entry=0x153a1c0, receiver=receiver@entry=0x47cb930, e=e@entry=0x36c28e0) at kernel/qapplication.cpp:4554
#10 0x00007ff8095bac7a in QApplication::notify (this=0x7fff68010bb0, receiver=0x47cb930, e=0x36c28e0) at kernel/qapplication.cpp:4415
#11 0x00007ff80aee2006 in KApplication::notify (this=0x7fff68010bb0, receiver=0x47cb930, event=0x36c28e0) at /usr/src/debug/kdelibs-4.8.5/kdeui/kernel/kapplication.cpp:311
#12 0x00007ff80a48673e in QCoreApplication::notifyInternal (this=0x7fff68010bb0, receiver=receiver@entry=0x47cb930, event=event@entry=0x36c28e0) at kernel/qcoreapplication.cpp:876
#13 0x00007ff80a48a091 in sendEvent (event=0x36c28e0, receiver=0x47cb930) at kernel/qcoreapplication.h:231
#14 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x14ee1f0) at kernel/qcoreapplication.cpp:1500
#15 0x00007ff80a4b47a3 in sendPostedEvents () at kernel/qcoreapplication.h:236
#16 postEventSourceDispatch (s=s@entry=0x15398f0) at kernel/qeventdispatcher_glib.cpp:279
#17 0x00007ff8035773b5 in g_main_dispatch (context=0x1539aa0) at gmain.c:2539
#18 g_main_context_dispatch (context=context@entry=0x1539aa0) at gmain.c:3075
#19 0x00007ff8035776e8 in g_main_context_iterate (context=context@entry=0x1539aa0, block=block@entry=1, dispatch=dispatch@entry=1, self=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at gmain.c:3146
#20 0x00007ff8035777a4 in g_main_context_iteration (context=0x1539aa0, may_block=1) at gmain.c:3207
#21 0x00007ff80a4b4936 in QEventDispatcherGlib::processEvents (this=0x14f3a70, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#22 0x00007ff8096568ae in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#23 0x00007ff80a48573f in QEventLoop::processEvents (this=this@entry=0x7fff68010a80, flags=...) at kernel/qeventloop.cpp:149
#24 0x00007ff80a4859c8 in QEventLoop::exec (this=0x7fff68010a80, flags=...) at kernel/qeventloop.cpp:204
#25 0x00007ff80a48a3a8 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#26 0x00000000004148eb in main (argc=3, argv=0x7fff68010d08) at /usr/src/debug/kdenetwork-4.8.5/kopete/kopete/main.cpp:105

Expected Results:  
Kopete should not crash. Instead, Kopete should ignore the user input.
Ideally, Kopete would store the chatroom password (e.g. in KWallet) such that it does not need to be entered again.
Comment 1 Jekyll Wu 2013-08-23 03:42:20 UTC

*** This bug has been marked as a duplicate of bug 323907 ***