Bug 120589

Summary: crash when clicking on a contact with CJK display name
Product: [Unmaintained] kopete Reporter: Christophe Dumez <HyDr0g3n>
Component: Chat WindowAssignee: Kopete Developers <kopete-bugs-null>
Status: RESOLVED NOT A BUG    
Severity: crash CC: wstephenson
Priority: NOR    
Version First Reported In: 0.11   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Christophe Dumez 2006-01-22 12:11:57 UTC
Version:           0.11 (using KDE KDE 3.5.1)
Installed from:    Ubuntu Packages
Compiler:          gcc 4 
OS:                Linux

Kopete is crashing when I'm clicking on some user in my contactlist (in order to start a conversation). I think this crash is linked to their nickname :
Fei (li)放假了……(li)
~~piaopiao~~  只是暂时的分开,我们会一直互相支持着!大家假期快乐!

There are chinese characters in their nickname and it may be the reason of the crash. I don't think this problem appeared in earlier versions of kopete.

here is the backtrace :
(no debugging symbols found)
Using host libthread_db library "/lib/libthread_db.so.1".
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread 46912595039456 (LWP 8220)]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[KCrash handler]
#3  0x00002aaab040dda0 in strcoll_l () from /lib/libc.so.6
#4  0x00002aaaae19a8b3 in QString::localeAwareCompare ()
   from /usr/lib/libqt-mt.so.3
#5  0x00002aaab2f9b5eb in ChatMembersListWidget::ContactItem::reposition ()
   from /usr/lib/kde3/kopete_chatwindow.so
#6  0x00002aaab2f9b6cf in ChatMembersListWidget::ContactItem::setStatus ()
   from /usr/lib/kde3/kopete_chatwindow.so
#7  0x00002aaab2f9b9f3 in ChatMembersListWidget::ContactItem::ContactItem ()
   from /usr/lib/kde3/kopete_chatwindow.so
#8  0x00002aaab2f9bb11 in ChatMembersListWidget::slotContactAdded ()
   from /usr/lib/kde3/kopete_chatwindow.so
#9  0x00002aaab2f9bdc0 in ChatMembersListWidget::ChatMembersListWidget ()
   from /usr/lib/kde3/kopete_chatwindow.so
#10 0x00002aaab2f9bfd6 in ChatView::createMembersList ()
   from /usr/lib/kde3/kopete_chatwindow.so
#11 0x00002aaab2f9c882 in ChatView::ChatView ()
   from /usr/lib/kde3/kopete_chatwindow.so
#12 0x00002aaab2f9c906 in ChatWindowPlugin::createView ()
   from /usr/lib/kde3/kopete_chatwindow.so
#13 0x00002aaaaae2e796 in KopeteViewManager::view ()
   from /usr/lib/libkopete.so.1
#14 0x00002aaaaadb7de4 in Kopete::ChatSessionManager::createView ()
   from /usr/lib/libkopete.so.1
#15 0x00002aaaaadbf408 in Kopete::ChatSession::view ()
   from /usr/lib/libkopete.so.1
#16 0x00002aaaaadbf71e in Kopete::Contact::execute ()
   from /usr/lib/libkopete.so.1
#17 0x00002aaaaadc0543 in Kopete::MetaContact::execute ()
   from /usr/lib/libkopete.so.1
#18 0x000000000046afa3 in KopeteMetaContactLVI::staticMetaObject ()
#19 0x000000000044b7da in KopeteContactListView::staticMetaObject ()
#20 0x0000000000454d07 in KopeteContactListView::staticMetaObject ()
#21 0x00002aaaade98b0e in QObject::activate_signal ()
   from /usr/lib/libqt-mt.so.3
#22 0x00002aaaac817b62 in KListView::executed () from /usr/lib/libkdeui.so.4
#23 0x00002aaaac817c82 in KListView::emitExecute () from /usr/lib/libkdeui.so.4
#24 0x00002aaaac84b08b in KListView::qt_invoke () from /usr/lib/libkdeui.so.4
#25 0x00002aaaaae14beb in Kopete::UI::ListView::ListView::qt_invoke ()
   from /usr/lib/libkopete.so.1
#26 0x0000000000454bdd in KopeteContactListView::staticMetaObject ()
#27 0x00002aaaade98b0e in QObject::activate_signal ()
   from /usr/lib/libqt-mt.so.3
#28 0x00002aaaae217797 in QListView::mouseButtonClicked ()
   from /usr/lib/libqt-mt.so.3
#29 0x00002aaaadf90dd2 in QListView::contentsMouseReleaseEventEx ()
   from /usr/lib/libqt-mt.so.3
#30 0x00002aaaadf90f05 in QListView::contentsMouseReleaseEvent ()
   from /usr/lib/libqt-mt.so.3
#31 0x00002aaaac80578a in KListView::contentsMouseReleaseEvent ()
   from /usr/lib/libkdeui.so.4
#32 0x00002aaaadfc0dfc in QScrollView::viewportMouseReleaseEvent ()
   from /usr/lib/libqt-mt.so.3
#33 0x00002aaaadfc35b9 in QScrollView::eventFilter ()
   from /usr/lib/libqt-mt.so.3
#34 0x00002aaaadf8a7d9 in QListView::eventFilter () from /usr/lib/libqt-mt.so.3
#35 0x00002aaaaae14cfa in Kopete::UI::ListView::ListView::eventFilter ()
   from /usr/lib/libkopete.so.1
#36 0x00002aaaade95b9d in QObject::activate_filters ()
   from /usr/lib/libqt-mt.so.3
#37 0x00002aaaade95c16 in QObject::event () from /usr/lib/libqt-mt.so.3
#38 0x00002aaaaded0559 in QWidget::event () from /usr/lib/libqt-mt.so.3
#39 0x00002aaaade324ac in QApplication::internalNotify ()
   from /usr/lib/libqt-mt.so.3
#40 0x00002aaaade32ae9 in QApplication::notify () from /usr/lib/libqt-mt.so.3
#41 0x00002aaaad1d201e in KApplication::notify () from /usr/lib/libkdecore.so.4
#42 0x00002aaaaddc3bf4 in QApplication::sendSpontaneousEvent ()
   from /usr/lib/libqt-mt.so.3
#43 0x00002aaaaddbf3e2 in QETWidget::translateMouseEvent ()
   from /usr/lib/libqt-mt.so.3
#44 0x00002aaaaddbd80b in QApplication::x11ProcessEvent ()
   from /usr/lib/libqt-mt.so.3
#45 0x00002aaaaddd667f in QEventLoop::processEvents ()
   from /usr/lib/libqt-mt.so.3
#46 0x00002aaaade4a366 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3
#47 0x00002aaaade4a26f in QEventLoop::exec () from /usr/lib/libqt-mt.so.3
#48 0x00002aaaade31118 in QApplication::exec () from /usr/lib/libqt-mt.so.3
#49 0x000000000043a9c5 in ?? ()
#50 0x00002aaab03b549b in __libc_start_main () from /lib/libc.so.6
#51 0x000000000042f7ba in ?? ()
#52 0x00007fffffd7ed88 in ?? ()
#53 0x000000000000001c in ?? ()
#54 0x0000000000000001 in ?? ()
#55 0x00007fffffd8092b in ?? ()
#56 0x0000000000000000 in ?? ()
Comment 1 Matt Rogers 2006-01-22 13:32:37 UTC
bug reporters don't need to add themselves to the CC field. 

also, which protocol does the person with this nickname come from? It may not matter but always best to have proper info
Comment 2 Christophe Dumez 2006-01-22 14:38:21 UTC
Ok.

sorry for cc, wasn't sure.

These users are using MSN Protocol. I'm now sure that the problem comes from the chinese characters. I asked one of my contact to remove these character and it is now working again.

I hope this can help.
Comment 3 Christophe Dumez 2006-01-27 16:26:40 UTC
Hey, I updated to Kde 3.5.1 today and I had a good surprise. It seems that the problem fixed itself :)

I am not having this bug anymore.

Thanks !
Comment 4 Christophe Dumez 2006-01-27 22:02:49 UTC
false alert, my fault.

The bug isn't fixed, I got confused because a chinese contact had removed the chinese characters in his nickname.

Sorry again.
Comment 5 Olivier Goffart 2006-03-31 15:33:38 UTC
It works fine here.
By looking the code i don't see problem. it may be a qt bug in QString::localeAwareCompare 
(maybe due to an encoding problem)

I have Qt 3.3.6  and Kopete 0.12 beta.
Comment 6 Joseph Kerian 2006-04-28 22:37:32 UTC
I had a very similar problem. Running on a FreeBSD system, when I clicked on the "View" button in the popup bubble to chat, occasionally the entire KDE interface crashes.
Result: I'm dumped to a text terminal that is displaying the last information printed when I executed "startx". One complication is that my amaroK music continues playing until the end of the song, but the interface is completely unresponsive (no keyboard input does anything, including changing to other text terminals... no mouse movement either). I haven't figured out how to do anything at that point, and have to reset the machine. Nothing seems show up in any of the log files.

Although it occasionally happens with other contacts, usually it happens with contact names containing Japanese characters. I have since installed the msmincho font from my windows install, and that corrected some of the display names (I haven't had the crashes since, although they were intermittant before).
Comment 7 Donald Donovan 2006-06-18 19:29:41 UTC
I've had this same problem too, but with kpanel and kopete caused by the same nicknames.

In kopete, the problem shows its self only if I hover over the nickname to get a blurb for more information, or immediately left click the nickname without hovering. If I right click, and goto properties I can see the nickname information  presented clearly.

I also had a problem with the same nicknames involving kpanel however. After fighting with kopete for a while trying to find out what was causing the problem, I changed to Gaim for a few hours. Gaim appeared to be OK when chatting with the people's nicknames causing the problem, so I assumed for a while that it was just a kopete bug.

However, while talking with one of these people, I happened to hover over the task bar part of kpanel which contained the chat window. When hovering, it shows a popup almost like the one in kopete... kpanel crashed.

kpanel 3.5.2
QT 4.1.2
kopete 0.11 0.12.0 (tried both)

The only common occurance I can find between the two is QT, I'm in the progress of upgrading to QT 4.1.3 to see if that helps, if it does not I will be downgrading to an older version to see if it makes a difference though.

Comment 8 Joseph Kerian 2006-07-13 17:59:50 UTC
Bah... new version of kopete, no progress on this front. The fewer crashes with the japanese font seems to have been a deception. It comes and goes somewhat randomly.

This doesn't seem to affect my older machines... only the ones with the newer nvidia cards. (7800GT)
Comment 9 Will Stephenson 2006-11-05 23:52:15 UTC
Works for me with the above nicknames.  Can anyone post some other nicknames that reliably cause the crash, or more detailed (--enable-debug=full) backtraces?
Comment 10 Will Stephenson 2007-11-14 15:47:42 UTC
Old bug, no response, reopen if needed.