Bug 169235 - changing enconding for icq crashes kopete.
Summary: changing enconding for icq crashes kopete.
Status: RESOLVED FIXED
Alias: None
Product: kopete
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: OpenSUSE Linux
: NOR crash with 1 vote (vote)
Target Milestone: ---
Assignee: Kopete Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-08-16 13:57 UTC by Rami
Modified: 2008-09-13 11:09 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
crash report (7.09 KB, text/plain)
2008-08-16 18:56 UTC, Rami
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rami 2008-08-16 13:57:44 UTC
Version:            (using KDE 4.1.0)
Installed from:    SuSE RPMs
OS:                Linux

I've changed encoding for icq plugin from UTF-8 to hebrew(visually ordered) and it crashed.
And since then kopete keeps crashing on startup.
Sometimes it starts and when i try to connect to icq ,it crashes again.
Comment 1 FiNeX 2008-08-16 17:16:05 UTC
Please, would you provide the backtrace of the crash?
You can learn how to provide an useful backtrace reading this page:
http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports

Thanks a lot!
Comment 2 Rami 2008-08-16 18:56:59 UTC
Created attachment 26879 [details]
crash report

I've tried to find a kopete package with debug info but it's not available
anywhere on openSUSE repositories.

I've resolved the repeated crashing by deleting kopeterc file from config dir
and the kopete folder from /.kde4/share/apps on my home folder.

Then I've tried to reproduce the crash,this is what I did:
1.changed encoding for ICQ protocol to UTF-8,saved settings (apply,ok),
2.changed encoding to ISO-8859-8 Hebrew,visually ordered.
3.it crashed right away.

since my settings in kopete were to connect automatically on startup,it kept
crashing and blocked me from ICQ because it tried to connect too many times /
too fast.when I reproduced the bug I turned this setting off and it doesn't
crash on startup,but when I manually connect it crashes.

so the best encoding for hebrew is windows-1255, it seems to work fine.
but still I think that this crash should be fixed.
Comment 3 Oliver Putz 2008-09-02 12:23:05 UTC
I can confirm this bug with kopete from KDE-4.1.0

Steps to reproduce:

1) In ICQ plugin switch encoding to ISO-8859-8
2) Connect and see kopete crash with the following backtrace:

Application: Kopete (kopete), signal SIGSEGV
[Thread debugging using libthread_db enabled]
[New Thread 0xb5959720 (LWP 2200)]
[New Thread 0xb34e6b90 (LWP 20627)]
[KCrash handler]
#6  QTextCodec::toUnicode (this=0x0, a=@0xbf8dea7c)
    at codecs/qtextcodec.cpp:1202
#7  0xb3856b74 in ICQMyselfContact::receivedShortInfo (this=0x8308608, 
    contact=@0xbf8df0d8)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/icq/icqaccount.cpp:95
#8  0xb3856cf7 in ICQMyselfContact::qt_metacall (this=0x8308608, 
    _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbf8debac)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/icq/icqaccount.moc:67
#9  0xb6f66530 in QMetaObject::activate (sender=0x82a1058, 
    from_signal_index=<value optimized out>, to_signal_index=18, 
    argv=<value optimized out>) at kernel/qobject.cpp:3001
#10 0xb6f66c92 in QMetaObject::activate (sender=0x82a1058, m=0xb37b6160, 
    local_signal_index=14, argv=0xbf8debac) at kernel/qobject.cpp:3071
#11 0xb36dd09b in Client::receivedIcqShortInfo (this=0x82a1058, 
    _t1=@0xbf8df0d8)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/liboscar/client.moc:335
#12 0xb36e29bf in Client::receivedIcqInfo (this=0x82a1058, 
    contact=@0xbf8df0d8, type=1)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/client.cpp:468
#13 0xb36e4660 in Client::qt_metacall (this=0x82a1058, 
    _c=QMetaObject::InvokeMetaMethod, _id=42, _a=0xbf8ded38)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/liboscar/client.moc:218
#14 0xb6f66530 in QMetaObject::activate (sender=0x80f6ac8, 
    from_signal_index=<value optimized out>, to_signal_index=7, 
    argv=<value optimized out>) at kernel/qobject.cpp:3001
#15 0xb6f66c92 in QMetaObject::activate (sender=0x80f6ac8, m=0xb37b7634, 
    local_signal_index=0, argv=0xbf8ded38) at kernel/qobject.cpp:3071
#16 0xb3772a9f in ICQUserInfoRequestTask::receivedInfoFor (this=0x80f6ac8, 
    _t1=@0xbf8df0d8, _t2=1)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/liboscar/icquserinfotask.moc:77
#17 0xb377393b in ICQUserInfoRequestTask::take (this=0x80f6ac8, 
    transfer=0x80c6530)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/tasks/icquserinfotask.cpp:157
#18 0xb37311c3 in Task::take (this=0x81146d0, transfer=0x80c6530)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/tasks/task.cpp:134
#19 0xb370cadc in Connection::distribute (this=0x8470150, transfer=0x80c6530)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/connection.cpp:223
#20 0xb370cb8e in Connection::streamReadyRead (this=0x8470150)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/connection.cpp:240
#21 0xb370cc5d in Connection::qt_metacall (this=0x8470150, 
    _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0xbf8df238)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/liboscar/connection.moc:83
#22 0xb6f66530 in QMetaObject::activate (sender=0x80e35a0, 
    from_signal_index=<value optimized out>, to_signal_index=5, 
    argv=<value optimized out>) at kernel/qobject.cpp:3001
#23 0xb6f66c92 in QMetaObject::activate (sender=0x80e35a0, m=0xb37b6564, 
    local_signal_index=1, argv=0x0) at kernel/qobject.cpp:3071
#24 0xb36f92d7 in Stream::readyRead (this=0x80e35a0)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/liboscar/stream.moc:86
#25 0xb36f7405 in ClientStream::doReadyRead (this=0x80e35a0)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/oscarclientstream.cpp:327
#26 0xb36f7726 in ClientStream::cp_incomingData (this=0x80e35a0)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/oscarclientstream.cpp:258
#27 0xb36f786d in ClientStream::qt_metacall (this=0x80e35a0, 
    _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0xbf8df378)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/liboscar/oscarclientstream.moc:84
#28 0xb6f66530 in QMetaObject::activate (sender=0x810f3bc, 
    from_signal_index=<value optimized out>, to_signal_index=5, 
    argv=<value optimized out>) at kernel/qobject.cpp:3001
#29 0xb6f66c92 in QMetaObject::activate (sender=0x810f3bc, m=0xb37b6268, 
    local_signal_index=1, argv=0x0) at kernel/qobject.cpp:3071
#30 0xb36e8f0d in CoreProtocol::incomingData (this=0x810f3bc)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/liboscar/coreprotocol.moc:89
#31 0xb36e998e in CoreProtocol::wireToTransfer (this=0x810f3bc, 
    wire=@0x810f3c4)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/coreprotocol.cpp:221
#32 0xb36e9d39 in CoreProtocol::addIncomingData (this=0x810f3bc, 
    incomingBytes=@0xbf8df578)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/coreprotocol.cpp:108
#33 0xb36f744d in ClientStream::socketReadyRead (this=0x80e35a0)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/protocols/oscar/liboscar/oscarclientstream.cpp:312
#34 0xb36f78b3 in ClientStream::qt_metacall (this=0x80e35a0, 
    _c=QMetaObject::InvokeMetaMethod, _id=6, _a=0xbf8df618)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete_build/kopete/protocols/oscar/liboscar/oscarclientstream.moc:88
#35 0xb6f66530 in QMetaObject::activate (sender=0x8244f28, 
    from_signal_index=<value optimized out>, to_signal_index=4, 
    argv=<value optimized out>) at kernel/qobject.cpp:3001
#36 0xb6f66c92 in QMetaObject::activate (sender=0x8244f28, m=0xb703c048, 
    local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3071
#37 0xb6fa432f in QIODevice::readyRead (this=0x8244f28)
    at .moc/debug-shared/moc_qiodevice.cpp:83
#38 0xb6ca53ff in QAbstractSocketPrivate::canReadNotification (this=0x8663000)
    at socket/qabstractsocket.cpp:576
#39 0xb6ca9397 in QAbstractSocketPrivate::readNotification (this=0x8663000)
    at socket/qabstractsocket_p.h:79
#40 0xb6c94ff9 in QAbstractSocketEngine::readNotification (this=0x81a2df8)
    at socket/qabstractsocketengine.cpp:142
#41 0xb6c96cb1 in QReadNotifier::event (this=0x83e9ed8, e=0xbf8dfa50)
    at socket/qnativesocketengine.cpp:974
#42 0xb626c8a4 in QApplicationPrivate::notify_helper (this=0x80bd0d0, 
    receiver=0x83cb6e0, e=0xbf8dfa50) at kernel/qapplication.cpp:3772
#43 0xb6270a75 in QApplication::notify (this=0xbf8dfde8, receiver=0x83cb6e0, 
    e=0xbf8dfa50) at kernel/qapplication.cpp:3366
#44 0xb75f76c3 in KApplication::notify (this=0xbf8dfde8, receiver=0x83cb6e0, 
    event=0xbf8dfa50)
    at /var/tmp/portage/kde-base/kdelibs-4.1.0/work/kdelibs-4.1.0/kdeui/kernel/kapplication.cpp:311
#45 0xb6f50d59 in QCoreApplication::notifyInternal (this=0xbf8dfde8, 
    receiver=0x83cb6e0, event=0xbf8dfa50) at kernel/qcoreapplication.cpp:587
#46 0xb6f7f833 in QEventDispatcherUNIX::activateSocketNotifiers (
    this=0x80bd208) at kernel/qcoreapplication.h:215
#47 0xb6f7fda3 in QEventDispatcherUNIXPrivate::doSelect (this=0x80bd218, 
    flags=@0xbf8dfbc8, timeout=0xbf8dfbc0)
    at kernel/qeventdispatcher_unix.cpp:252
#48 0xb6f7ff43 in QEventDispatcherUNIX::processEvents (this=0x80bd208, 
    flags=@0xbf8dfcd8) at kernel/qeventdispatcher_unix.cpp:895
#49 0xb62fcf61 in QEventDispatcherX11::processEvents (this=0x80bd208, 
    flags=@0xbf8dfd08) at kernel/qeventdispatcher_x11.cpp:154
#50 0xb6f500d3 in QEventLoop::processEvents (this=0xbf8dfd80, 
    flags=@0xbf8dfd48) at kernel/qeventloop.cpp:149
#51 0xb6f50246 in QEventLoop::exec (this=0xbf8dfd80, flags=@0xbf8dfd88)
    at kernel/qeventloop.cpp:200
#52 0xb6f52401 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:845
#53 0xb626c23f in QApplication::exec () at kernel/qapplication.cpp:3304
#54 0x0808680f in main (argc=3, argv=0xbf8e01d4)
    at /var/tmp/portage/kde-base/kopete-4.1.0/work/kopete-4.1.0/kopete/kopete/main.cpp:102
#0  0xffffe424 in __kernel_vsyscall ()
Comment 4 Roman Jarosz 2008-09-13 11:09:21 UTC
SVN commit 858254 and 858262 by rjarosz:
 
Fix bug 169235: Changing enconding for icq crashes kopete.
Filter out unavailable encodings.
 
 M  +48 -39    icq/icqprotocol.cpp  
 M  +2 -0      icq/icqprotocol.h  
 M  +6 -1      oscaraccount.cpp  
 M  +8 -1      oscarcontact.cpp  
 
 
WebSVN link: http://websvn.kde.org/?view=rev&revision=858254