Bug 167656 - multiple entries in contact list
Summary: multiple entries in contact list
Status: RESOLVED FIXED
Alias: None
Product: kopete
Classification: Applications
Component: ICQ and AIM Plugins (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR normal
Target Milestone: ---
Assignee: Kopete Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-07-29 15:03 UTC by Simon Seif
Modified: 2008-12-24 14:43 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
wireshark-log of kopete connecting to the icq-network (25.20 KB, application/octet-stream)
2008-12-23 11:27 UTC, Henning Fleddermann
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Seif 2008-07-29 15:03:44 UTC
Version:            (using KDE 4.1.0)
Installed from:    Unspecified Linux
OS:                Linux

Distro: Arch Linux
Arch: x86_64
Kopete-Version (exact): 0.50.80
Protocoll: ICQ
Loaded Plugins: History (1.0)

Problem:
All entries in the contact list appear either double or quadruble. The total amount of "Online contacts" and "Offline contacs" (the number shown in brackets) is also multiplied with 2 or 4. 
I am able to send messages to the "bogus"-entries, altough if they reply another message-window opens as if it were another contact. The "real" contact is always the fist one (so if I send a message directly to this contact, the reply will be in the same message-window) in the list, 2-4 are "bogus". 
There is no difference in the name of the contact.
Showing tree branch lines or arranging metacontacts by groups (or any other option in the contact-list-settings has no effect on the multiple entries).
I can remove the entries from the contact list separately (removing the "original" contact has no effect on the "bogus" entries and vice versa).
Screenshot: http://img93.imageshack.us/img93/2305/kopetewh1.jpg


Steps to reproduce:
Create new identity, add ICQ-account, restart kopete, enjoy bloated contact list ^^

I cannot reproduce this behaviour with an i686 installation.

If I start kopete from an terminal and have an eye on the output, there are no messages related to the contact list.

I hope it is not too hard to understand (I am not a native speaker).
Comment 1 Thomas 2008-09-22 19:42:15 UTC
I too can confirm this bug
Using Kubuntu 8.10 Alpha 6
KDE 4.1.1
Kopete: 0.60.1

ICQ being the only account used.
I get tripple entries, though I sometimes get double entries too.
It used to work the first time I started Kopete on my new installation.
I can reproduce the bug with the steps provided in the initial post.
I also denied to store my ICQ password in kwallet, maybe that has something to do with it, since kwallet pops up 2x times and normally it shouldn't since I don't store it in kwallet?
Comment 2 Roman Jarosz 2008-09-22 20:32:27 UTC
Hi, could you catch ICQ packets with wireshark and send it to kedgedev@centrum.cz?

Wireshark steps.
1. Disconnect from ICQ.
2. Start wireshark.
3. From menu choose Capture->Options...
4. Choose interface probably eth0
5. Add "port 5190" (without quotes) into the combobox next to Capture Filter button.
6. Press start.
7. Connect to icq.
8. Press stop.
9. File->Save and save it.

If you have debug build then console output would be helpful too.
kopete --nofork 2>debug.log (in console)

If you need additional help you can find me (kedge) in Kopete irc channel

Comment 3 Roman Jarosz 2008-09-30 19:28:25 UTC
I was able to reproduce this bug only for specific contact so I'm not sure if the ICQ commit will fix this bug entirely, but commit 865119 should prevent Kopete from adding one contact more than once and if protocol tried to add it second time it will show warning in console.

This will be in KDE 4.1.3.

SVN commit 865119 by rjarosz:

Backport commit 864908.
Show warning if we are trying to overwrite already created contact.
Also don't add it to contact hash.

SVN commit 865118 by rjarosz:

Backport commit 864907.
We can't create new ICQ contact for UserInfo because it will overwrite contact
from contact list and bad things may happen like duplicated contacts in contact list.
Comment 4 Henning Fleddermann 2008-12-23 11:27:52 UTC
Created attachment 29573 [details]
wireshark-log of kopete connecting to the icq-network
Comment 5 Henning Fleddermann 2008-12-23 11:31:48 UTC
I'm still getting multiple contacts in my contact list (I only use ICQ) with Kopete 4.1.85...
I'm using Gentoo ~amd64 and KDE 4.1.85 installed from the Gentoo kde-crazy overlay.

(In reply to comment #2)
> Hi, could you catch ICQ packets with wireshark and send it to
> kedgedev@centrum.cz?
> 
> Wireshark steps.
> 1. Disconnect from ICQ.
> 2. Start wireshark.
> 3. From menu choose Capture->Options...
> 4. Choose interface probably eth0
> 5. Add "port 5190" (without quotes) into the combobox next to Capture Filter
> button.
> 6. Press start.
> 7. Connect to icq.
> 8. Press stop.
> 9. File->Save and save it.

I followed this steps and attached the file to the bug (I will also send it to the eMail-adress you mentioned). I hope this helps to figure out what's wrong.
Comment 6 Roman Jarosz 2008-12-23 16:40:11 UTC
Henning the patch that is in svn should prevent addning duplicate contacts, but if you already have them in Kopete contact list you have to regenerate the contact list. Try to move .kde/share/apps/kopete/contactlist.xml somewere else and start Kopete and connect to ICQ if you didn't do that already. Let me know if it helps.
Comment 7 Henning Fleddermann 2008-12-24 13:51:17 UTC
I tried moving the contaclist.xml but the next time I started Kopete there still where double contacts. On Konsole there are alot of warnings saying:
kopete(5046)/libkopete Kopete::Account::registerContact: Contact already exists!!!
They still seem to be added though.
I'm using Kopete 4.1.85, should I try to install Kopete from git or is the patch already included in 4.1.85?
I can also compile Kopete with debug-symbols if that would help.
Comment 8 Henning Fleddermann 2008-12-24 14:26:40 UTC
Ooops sorry, my fault. I removed the wrong contactlist.xml (it seems Gentoo handles .kde in a somewhat weird way. .kde is a symlink that points to .kde4, but the contactlist.xml Kopete is using is in .kde4.2).
Thanks and merry Christmas. :)
Comment 9 Roman Jarosz 2008-12-24 14:43:39 UTC
Henning, so I assume that now you don't have duplicated contacts in contact list so I'm closing it.