pidgin: c9d0dec7: Disconnect accounts immediately when we'...

rlaager at rlaager at
Sat May 10 04:30:53 EDT 2008

Revision: c9d0dec733ae43dcff4b615fd372f2eaf57a5d1f
Ancestor: 9cbb69e06e19c581b9691f6acb2c48f204050dd6
Author: rlaager at
Date: 2008-05-10T08:27:21
Branch: im.pidgin.pidgin

Modified files:


Disconnect accounts immediately when we're told the network has
disconnected, rather than call the keepalive.  This provides immediate
feedback that the user is disconnected from the network and speeds
reconnection if they're changing to a new network immediately.  This should
only be a problem if we're being told the network has disconnected when it
really is still connected or, for example, if you accidentally unplug your
network cable and plug it right back in.  (The keepalive method should mean
that you'd be re-connected and TCP would re-transmit packets as necessary,
where this will cut you off immediately.)  Given that other applications
follow this model, we should be okay.

-------------- next part --------------
--- pidgin/gtkconn.c	365d788786f595979052395da69a7296580881de
+++ pidgin/gtkconn.c	e9f758847d502d310a198bbb3ab25835b0c78bce
@@ -210,15 +210,7 @@ static void pidgin_connection_network_di
 	while (l) {
 		PurpleAccount *a = (PurpleAccount*)l->data;
 		if (!purple_account_is_disconnected(a)) {
-			gc = purple_account_get_connection(a);
-			if (gc && gc->prpl)
-				prpl_info = PURPLE_PLUGIN_PROTOCOL_INFO(gc->prpl);
-			if (prpl_info) {
-				if (prpl_info->keepalive)
-					prpl_info->keepalive(gc);
-				else
-					purple_account_disconnect(a);
-			}
+			purple_account_disconnect(a);
 		l = l->next;

More information about the Commits mailing list