[prev in list] [next in list] [prev in thread] [next in thread]
List: kopete-devel
Subject: Re: [kopete-devel] Review Request: Fix for crash when disconnecting
From: "Lamarque Souza" <lamarque () gmail ! com>
Date: 2009-09-11 19:39:33
Message-ID: 20090911193933.16883.88702 () localhost
[Download RAW message or body]
> On 2009-09-11 18:51:16, Matt Rogers wrote:
> > Let's get this patch committed for safety purposes. Users are seeing tons of \
> > crashes at logout time, and if this can help fix it for them, then let's go for \
> > it.
Actually I was not able to reproduce this problem anymore, I am not confortable in \
commiting this code without a confirmed use case. I am also busy trying to make \
ad-hoc wireless work with networkmanager-applet so I am going to stay some time away \
from Kopete development/fix.
- Lamarque
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/972/#review2297
-----------------------------------------------------------
On 2009-07-09 12:01:45, Lamarque Souza wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/972/
> -----------------------------------------------------------
>
> (Updated 2009-07-09 12:01:45)
>
>
> Review request for Kopete.
>
>
> Summary
> -------
>
> Sometimes Kopete crashes when disconnecting from WLM server. I think I have
> found the cause, which seems a race condition in WlmServer::WlmDisconnect:
>
> 1 if (mainConnection)
> 2 {
> 3 disconnecting = true;
> 4 QListIterator i(cb.socketList);
> 5 while (i.hasNext())
> 6 {
> 7 a = i.next();
> 8 QObject::disconnect (a, 0, 0, 0);
> 9 cb.socketList.removeAll (a);
> 10 }
> 11 cb.socketList.clear ();
>
> 12 if (mainConnection->connectionState () !=
> 13 MSN::NotificationServerConnection::NS_DISCONNECTED)
> 14 {
> 15 delete mainConnection;
> 16 mainConnection = NULL;
> 17 }
> 18 }
>
> If WlmServer::WlmDisconnect is called twice in a really short time frame
> between the if in line 1 and the delete in line 15 some time will passed and
> the second run of WlmServer::WlmDisconnect will enter the if and delete
> mainConnection object for a second time, which will cause Kopete to crash.
>
>
> This addresses bug 199580.
> https://bugs.kde.org/show_bug.cgi?id=199580
>
>
> Diffs
> -----
>
> /trunk/KDE/kdenetwork/kopete/protocols/wlm/wlmserver.h 993925
> /trunk/KDE/kdenetwork/kopete/protocols/wlm/wlmserver.cpp 993925
>
> Diff: http://reviewboard.kde.org/r/972/diff
>
>
> Testing
> -------
>
>
> Thanks,
>
> Lamarque
>
>
_______________________________________________
kopete-devel mailing list
kopete-devel@kde.org
https://mail.kde.org/mailman/listinfo/kopete-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic