Bug 179425 - Kopete crashes when I get a message with MSN from an emesene client
Summary: Kopete crashes when I get a message with MSN from an emesene client
Status: RESOLVED UPSTREAM
Alias: None
Product: kopete
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Kopete Developers
URL:
Keywords:
: 183166 185840 188705 189273 189977 191230 192240 194038 194668 196662 197099 197290 202286 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-01-02 23:15 UTC by Emanuele Cisotti
Modified: 2009-08-27 14:18 UTC (History)
19 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Debug output (163 bytes, text/plain)
2009-01-07 23:40 UTC, Emanuele Cisotti
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Emanuele Cisotti 2009-01-02 23:15:23 UTC
Version:            (using Devel)
OS:                Linux
Installed from:    Compiled sources

I use Kopete included in KDE4.1.85
This is the output:
kopete(9001): Attempt to use QAction "show_participants_widget" with KXMLGUIFactory!
kopete(9001) KRichTextEditPart::readConfig: Loading config
kopete(9001) KIO::DataProtocol::DataProtocol:
kopete(9001) KIO::DataProtocol::get: kio_data@ KIO::DataSlave(0xa2c1bc8) ::get(const KUrl& url)
kopete(9001) Sonnet::Loader::loadPlugin: Successfully loaded plugin: "kspell_hspell.desktop"
kopete(9001) Sonnet::Loader::loadPlugin: Successfully loaded plugin: "kspell_enchant.desktop"
kopete(9001): No language dictionaries for the language :  "it"

terminate called after throwing an instance of 'std::runtime_error'
  what():  Incorrectly specified message format!
KCrash: Application 'kopete' crashing...
sock_file=/home/ciso/.kde/socket-M1330/kdeinit4__0
Comment 1 Dario Andres 2009-01-03 00:25:47 UTC
If you can reproduce the crash at will, can you read http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports and post a complete backtrace here? Thanks :)
Comment 2 Emanuele Cisotti 2009-01-06 21:13:46 UTC
I tried but I can't find a kopete-dbgsym for the 4.1.85 version.
I tried also with "gdb kopete" but I get the same debug:
terminate called after throwing an instance of 'std::runtime_error'
  what():  Incorrectly specified message format!
KCrash: Application 'kopete' crashing...
sock_file=/home/ciso/.kde/socket-M1330/kdeinit4__0
kdeinit4: preparing to launch /usr/lib/kde4/libexec/drkonqi
Comment 3 Dario Andres 2009-01-06 21:17:25 UTC
What distribution are you using ?
Comment 4 Emanuele Cisotti 2009-01-06 21:32:33 UTC
Kubuntu 8.10 updated via PPA.
The dbgsym package is only for KDE4.1.2
Comment 5 Dario Andres 2009-01-07 00:12:49 UTC
Try the kdenetwork-dbg package :)
Comment 6 Emanuele Cisotti 2009-01-07 23:19:59 UTC
Installed, I started kopete with only the command "kopete", but I get almost the same debug:
terminate called after throwing an instance of 'std::runtime_error'
  what():  Incorrectly specified message format!
KCrash: Application 'kopete' crashing...
sock_file=/home/ciso/.kde/socket-M1330/kdeinit4__0
Should I start kopete with some options?
Thank you
Comment 7 Dario Andres 2009-01-07 23:25:25 UTC
Try this

- Open a Konsole shell window
- Run "gdb kopete"
- Type "set logging on" and press Return (this will create a file named gdb.txt , so ensure there is no file with that name in the current folder)
- Type "run" and press Return
Kopete will start
- Reproduce the crash
- Return to the Konsole/GDB window
- Type "bt full" and press Return until there is no more info.

Then post the contents of the gdb.txt file in this report
Thanks
Comment 8 Emanuele Cisotti 2009-01-07 23:40:59 UTC
Created attachment 30022 [details]
Debug output
Comment 9 Emanuele Cisotti 2009-01-07 23:41:39 UTC
I attached the gdb.txt,
but I think that there isn't interesting information.
Comment 10 Dario Andres 2009-01-07 23:45:17 UTC
It seems like the app is quitting instead of crashing (?), however in the original post (comment 0) there's a "KCrash: Application 'kopete' crashing... " 
Comment 11 Emanuele Cisotti 2009-01-10 10:04:28 UTC
Is this useful:
Applicazione: Kopete (kopete), segnale SIGABRT
[Current thread is 0 (LWP 8833)]

Thread 2 (Thread 0xad609b90 (LWP 8846)):
#0  0xb80a9430 in __kernel_vsyscall ()
#1  0xb5e5a075 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/i686/cmov/libpthread.so.0
#2  0xb61099ed in pthread_cond_wait () from /lib/tls/i686/cmov/libc.so.6
#3  0xb6c446f2 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#4  0xb74ef532 in ?? () from /usr/lib/libQtNetwork.so.4
#5  0xb6c436ae in ?? () from /usr/lib/libQtCore.so.4
#6  0xb5e5650f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#7  0xb60fb7ee in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 1 (Thread 0xb58626c0 (LWP 8833)):
[KCrash Handler]
#6  0xb80a9430 in __kernel_vsyscall ()
#7  0xb6045880 in raise () from /lib/tls/i686/cmov/libc.so.6
#8  0xb6047248 in abort () from /lib/tls/i686/cmov/libc.so.6
#9  0xb626a6f8 in __gnu_cxx::__verbose_terminate_handler () from /usr/lib/libstdc++.so.6
#10 0xb62685d5 in ?? () from /usr/lib/libstdc++.so.6
#11 0xb6268612 in std::terminate () from /usr/lib/libstdc++.so.6
#12 0xb626874a in __cxa_throw () from /usr/lib/libstdc++.so.6
#13 0xb3091bfb in MSN::Message::getFormatInfo () from /usr/lib/libmsn.so.0.1
#14 0xb3093998 in MSN::Message::getFontName () from /usr/lib/libmsn.so.0.1
#15 0xb316108b in Callbacks::gotInstantMessage (this=0xa09dc9c, conn=0xaa89890, username=
          {email = {static npos = 4294967295, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xbfea6ff8 "ܠ�\n�AZ\t�\025X\t|O�\n� V\t��\021���\t��q��\br��K\004\n�\220\230�\n\034s꿠q��\234q����\b�\n"}}}, friendlyname=
        {static npos = 4294967295, _M_dataplus = {<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>}, _M_p = 0xbfea7000 "�\025X\t|O�\n� V\t��\021���\t��q��\br��K\004\n�\220\230�\n\034s꿠q��\234q����\b�\n"}}, msg=0xbfea6ff0) at /build/buildd/kdenetwork-4.1.85/kopete/protocols/wlm/wlmlibmsn.cpp:464
#16 0xb309a7c7 in MSN::SwitchboardServerConnection::message_plain () from /usr/lib/libmsn.so.0.1
#17 0xb30a044b in MSN::SwitchboardServerConnection::handle_MSG () from /usr/lib/libmsn.so.0.1
#18 0xb309baaf in MSN::SwitchboardServerConnection::dispatchCommand () from /usr/lib/libmsn.so.0.1
#19 0xb309afdd in MSN::SwitchboardServerConnection::handleIncomingData () from /usr/lib/libmsn.so.0.1
#20 0xb3096279 in MSN::Connection::dataArrivedOnSocket () from /usr/lib/libmsn.so.0.1
#21 0xb3162481 in WlmSocket::incomingData (this=0x976ee40) at /build/buildd/kdenetwork-4.1.85/kopete/protocols/wlm/wlmsocket.cpp:115
#22 0xb31625d5 in WlmSocket::qt_metacall (this=0x976ee40, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbfea9458)
    at /build/buildd/kdenetwork-4.1.85/obj-i486-linux-gnu/kopete/protocols/wlm/wlmsocket.moc:69
#23 0xb6d48a60 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#24 0xb6d497e2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#25 0xb6d81847 in QIODevice::readyRead () from /usr/lib/libQtCore.so.4
#26 0xb751f4e7 in ?? () from /usr/lib/libQtNetwork.so.4
#27 0xb7523e9e in QSslSocket::qt_metacall () from /usr/lib/libQtNetwork.so.4
#28 0xb31625aa in WlmSocket::qt_metacall (this=0x976ee40, _c=QMetaObject::InvokeMetaMethod, _id=38, _a=0xbfea9598)
    at /build/buildd/kdenetwork-4.1.85/obj-i486-linux-gnu/kopete/protocols/wlm/wlmsocket.moc:64
#29 0xb6d48a60 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#30 0xb6d497e2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#31 0xb6d81847 in QIODevice::readyRead () from /usr/lib/libQtCore.so.4
#32 0xb7508a72 in ?? () from /usr/lib/libQtNetwork.so.4
#33 0xb74f7ceb in ?? () from /usr/lib/libQtNetwork.so.4
#34 0xb74f9056 in ?? () from /usr/lib/libQtNetwork.so.4
#35 0xb63d78ec in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#36 0xb63df72e in QApplication::notify () from /usr/lib/libQtGui.so.4
#37 0xb7284d3d in KApplication::notify (this=0xbfea9c0c, receiver=0x96fbeb0, event=0xbfea99a0) at /build/buildd/kde4libs-4.1.85/kdeui/kernel/kapplication.cpp:307
#38 0xb6d33e61 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#39 0xb6d5e70a in ?? () from /usr/lib/libQtCore.so.4
#40 0xb5bf76f8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#41 0xb5bfada3 in ?? () from /usr/lib/libglib-2.0.so.0
#42 0xb5bfaf61 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#43 0xb6d5e478 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#44 0xb6471ea5 in ?? () from /usr/lib/libQtGui.so.4
#45 0xb6d3252a in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#46 0xb6d326ea in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#47 0xb6d34da5 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#48 0xb63d7767 in QApplication::exec () from /usr/lib/libQtGui.so.4
#49 0x0808b9af in main (argc=3, argv=0xbfea9ff4) at /build/buildd/kdenetwork-4.1.85/kopete/kopete/main.cpp:102
Comment 12 Dario Andres 2009-01-10 13:21:00 UTC
Indeed , it's more useful :). However, the crash seems to be inside libmsn. 
What "libmsn" version do you have?
Can any kopete devel check this?
Comment 13 Emanuele Cisotti 2009-01-10 15:25:43 UTC
libmsn-dev,libmsn0.1 4.0~beta1svn77-0ubuntu1~intrepid1~ppa1
Comment 14 Dario Andres 2009-01-10 15:28:01 UTC
Mh, I think libmsn 4.0 beta2 was released (http://sourceforge.net/project/showfiles.php?group_id=106043&package_id=114203&release_id=649025), may be this bug was fixed in it.
Comment 15 Emanuele Cisotti 2009-01-10 15:44:45 UTC
I tried to compile it, but I get an error.
I will wait till the next KDE4.2 RC.
Comment 16 Emanuele Cisotti 2009-01-15 12:52:56 UTC
In KDE4.2 RC, it's not included the new libmsn package.
I realize that Kopete crashes only if the other person uses emesene.
Works with all the other clients.
Comment 17 Dario Andres 2009-01-16 12:31:53 UTC
Well.. libmsn is not part of KDE... The GNU/Linux distribution is the reponsible for creating the libmsn package (as its schedule is probably different from the KDE one)
Comment 18 Samuele C. 2009-01-31 19:04:58 UTC
I have this same problem with kopete from kde 4.2.0, installed from kubuntu ppa repositories, on kubuntu 8.10
Installed version of libmsn is 4.0~beta3-0ubuntu1~intrepid1~ppa1
Comment 19 Vámosi Balázs 2009-01-31 21:52:18 UTC
as I see, I have the same problem
Kubuntu 8.10, KDE 4.2, libmsn 4.0~beta3

Alkalmazás: Kopete (kopete), szignál: SIGABRT
[Current thread is 0 (LWP 7950)]

Thread 3 (Thread 0xb3e58b90 (LWP 7951)):
#0  0xb7f9c430 in __kernel_vsyscall ()
#1  0xb6173c01 in select () from /lib/tls/i686/cmov/libc.so.6
#2  0xb6d92150 in ?? () from /usr/lib/libQtCore.so.4
#3  0xb6cc26ae in ?? () from /usr/lib/libQtCore.so.4
#4  0xb5db250f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#5  0xb617b7ee in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 2 (Thread 0xb2593b90 (LWP 7955)):
#0  0xb7f9c430 in __kernel_vsyscall ()
#1  0xb5db6075 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/i686/cmov/libpthread.so.0
#2  0xb61899ed in pthread_cond_wait () from /lib/tls/i686/cmov/libc.so.6
#3  0xb6cc36f2 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#4  0xb7574532 in ?? () from /usr/lib/libQtNetwork.so.4
#5  0xb6cc26ae in ?? () from /usr/lib/libQtCore.so.4
#6  0xb5db250f in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#7  0xb617b7ee in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 1 (Thread 0xb57556c0 (LWP 7950)):
[KCrash Handler]
#6  0xb7f9c430 in __kernel_vsyscall ()
#7  0xb60c5880 in raise () from /lib/tls/i686/cmov/libc.so.6
#8  0xb60c7248 in abort () from /lib/tls/i686/cmov/libc.so.6
#9  0xb62ea778 in __gnu_cxx::__verbose_terminate_handler () from /usr/lib/libstdc++.so.6
#10 0xb62e8655 in ?? () from /usr/lib/libstdc++.so.6
#11 0xb62e8692 in std::terminate () from /usr/lib/libstdc++.so.6
#12 0xb62e87ca in __cxa_throw () from /usr/lib/libstdc++.so.6
#13 0xb273bbfb in MSN::Message::getFormatInfo () from /usr/lib/libmsn.so.0.1
#14 0xb273d998 in MSN::Message::getFontName () from /usr/lib/libmsn.so.0.1
#15 0xb27fd03b in ?? () from /usr/lib/kde4/kopete_wlm.so
#16 0xb2744717 in MSN::SwitchboardServerConnection::message_plain () from /usr/lib/libmsn.so.0.1
#17 0xb274a52b in MSN::SwitchboardServerConnection::handle_MSG () from /usr/lib/libmsn.so.0.1
#18 0xb27458df in MSN::SwitchboardServerConnection::dispatchCommand () from /usr/lib/libmsn.so.0.1
#19 0xb2744dbd in MSN::SwitchboardServerConnection::handleIncomingData () from /usr/lib/libmsn.so.0.1
#20 0xb2740279 in MSN::Connection::dataArrivedOnSocket () from /usr/lib/libmsn.so.0.1
#21 0xb27ff3e1 in ?? () from /usr/lib/kde4/kopete_wlm.so
#22 0xb27ff535 in ?? () from /usr/lib/kde4/kopete_wlm.so
#23 0xb6dc7a60 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#24 0xb6dc87e2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#25 0xb6e00847 in QIODevice::readyRead () from /usr/lib/libQtCore.so.4
#26 0xb75a44e7 in ?? () from /usr/lib/libQtNetwork.so.4
#27 0xb75a8e9e in QSslSocket::qt_metacall () from /usr/lib/libQtNetwork.so.4
#28 0xb27ff50a in ?? () from /usr/lib/kde4/kopete_wlm.so
#29 0xb6dc7a60 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#30 0xb6dc87e2 in QMetaObject::activate () from /usr/lib/libQtCore.so.4
#31 0xb6e00847 in QIODevice::readyRead () from /usr/lib/libQtCore.so.4
#32 0xb758da72 in ?? () from /usr/lib/libQtNetwork.so.4
#33 0xb757cceb in ?? () from /usr/lib/libQtNetwork.so.4
#34 0xb757e056 in ?? () from /usr/lib/libQtNetwork.so.4
#35 0xb64568ec in QApplicationPrivate::notify_helper () from /usr/lib/libQtGui.so.4
#36 0xb645e72e in QApplication::notify () from /usr/lib/libQtGui.so.4
#37 0xb730806d in KApplication::notify () from /usr/lib/libkdeui.so.5
#38 0xb6db2e61 in QCoreApplication::notifyInternal () from /usr/lib/libQtCore.so.4
#39 0xb6ddd70a in ?? () from /usr/lib/libQtCore.so.4
#40 0xb5c176f8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#41 0xb5c1ada3 in ?? () from /usr/lib/libglib-2.0.so.0
#42 0xb5c1af61 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#43 0xb6ddd478 in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#44 0xb64f0ea5 in ?? () from /usr/lib/libQtGui.so.4
#45 0xb6db152a in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#46 0xb6db16ea in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#47 0xb6db3da5 in QCoreApplication::exec () from /usr/lib/libQtCore.so.4
#48 0xb6456767 in QApplication::exec () from /usr/lib/libQtGui.so.4
#49 0x0808b93f in _start ()
Comment 20 Yoran Brondsema 2009-02-04 20:37:54 UTC
I'm having the same problem here. It could be that it is due to the new version of libmsn (4.0-beta4-1) because I never experienced any problems with previous versions.
Comment 21 Yoran Brondsema 2009-02-04 20:38:39 UTC
*** Bug 183166 has been marked as a duplicate of this bug. ***
Comment 22 Sergio PR 2009-02-19 22:44:35 UTC
I'm suffering this bug too. I hope it can be fixed soon.
Comment 23 Sergio PR 2009-02-25 15:54:05 UTC
I finally found the bug. It's emesene related... they send this in Conversation.py:

        return "X-MMS-IM-Format: FN=" + face + \
            "; EF=" + effectValue + "; CO=" + color + \
            "; PF=0;RL=" + self.getRTL(message)

Where PF=0; and RL are not separated by a space, so libmsn throws an exception here:

    std::map<std::string, std::string> Message::getFormatInfo() const throw (std::runtime_error)
    {
        std::map<std::string, std::string> formatInfo;
        std::string formatHeader = (*this)["X-MMS-IM-Format"];
        if (formatHeader.empty())
            return formatInfo;
        
        std::vector<std::string> parameters = splitString(formatHeader, "; ");
        std::vector<std::string>::const_iterator i = parameters.begin();
        for (; i != parameters.end(); i++)
        {
            std::vector<std::string> pair = splitString(*i, "=");
            if (pair.size() == 2)
                formatInfo[decodeURL(pair[0])] = decodeURL(pair[1]);
            else if (pair.size() == 1)
                formatInfo[decodeURL(pair[0])] = "";
            else
                throw std::runtime_error("Incorrectly specified message format!");
        }
        
        return formatInfo;
    }

because it cannot parse it right with splitString (it uses "; " as separator).

emesene developers have been informed, but if someone want to change Conversation.py by adding that space after PF=0;
Comment 24 Matt Rogers 2009-02-25 23:24:39 UTC
not a bug in kopete. it needs to be fixed either in libmsn or in emesene (but i think it would be better to fix it in libmsn)
Comment 25 Dario Andres 2009-03-02 00:58:22 UTC
*** Bug 185840 has been marked as a duplicate of this bug. ***
Comment 26 Roman Jarosz 2009-04-03 10:08:45 UTC
*** Bug 188705 has been marked as a duplicate of this bug. ***
Comment 27 Lorenzo Masini 2009-04-04 07:00:14 UTC
I sent a quick&dirty patch to Tiago Salem Herrmann (libmsn) that fix this bug, he merged it to the svn.
So try the last libmsn svn. It seems to work.
Comment 28 Pino Toscano 2009-04-18 16:33:17 UTC
*** Bug 189977 has been marked as a duplicate of this bug. ***
Comment 29 Roman Jarosz 2009-05-10 16:45:12 UTC
*** Bug 192240 has been marked as a duplicate of this bug. ***
Comment 30 Dario Andres 2009-05-17 22:50:17 UTC
*** Bug 189273 has been marked as a duplicate of this bug. ***
Comment 31 Dario Andres 2009-05-25 16:41:20 UTC
*** Bug 194038 has been marked as a duplicate of this bug. ***
Comment 32 Roman Jarosz 2009-05-31 00:17:27 UTC
*** Bug 194668 has been marked as a duplicate of this bug. ***
Comment 33 Dario Andres 2009-06-15 13:42:38 UTC
*** Bug 191230 has been marked as a duplicate of this bug. ***
Comment 34 Dario Andres 2009-06-15 22:17:14 UTC
*** Bug 196662 has been marked as a duplicate of this bug. ***
Comment 35 Médéric Boquien 2009-06-19 05:39:10 UTC
*** Bug 197099 has been marked as a duplicate of this bug. ***
Comment 36 Dario Andres 2009-06-20 23:25:07 UTC
*** Bug 197290 has been marked as a duplicate of this bug. ***
Comment 37 Dario Andres 2009-08-11 19:54:08 UTC
*** Bug 202286 has been marked as a duplicate of this bug. ***
Comment 38 Andre 2009-08-27 14:18:00 UTC
Hai,

Thanks for al the efforts.
The end result is still very poor.
I'm now using a program that works.

Hoop you will find the real problem (and that is not me) 

Until than I will and can not use kopete.

bye

-----Oorspronkelijk bericht-----
Van: bugzilla_noreply@kde.org [mailto:bugzilla_noreply@kde.org] Namens Dario
Andres
Verzonden: dinsdag 11 augustus 2009 19:54
Aan: andredelugt@hotmail.com
Onderwerp: [Bug 179425] Kopete crashes when I get a message with MSN from an
emesene client

https://bugs.kde.org/show_bug.cgi?id=179425


Dario Andres <andresbajotierra@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |andredelugt@hotmail.com




--- Comment #37 from Dario Andres <andresbajotierra gmail com>  2009-08-11
19:54:08 ---
*** Bug 202286 has been marked as a duplicate of this bug. ***