pidgin.2.5.6: 4e079652: Backport ab47b66449b213d6fbfc728cc1e8c16...

datallah at pidgin.im datallah at pidgin.im
Thu Apr 30 01:26:01 EDT 2009


-----------------------------------------------------------------
Revision: 4e079652a03cd6088bd41b56639b7352c1036981
Ancestor: ae9bf4eef28655febeb7d4cd384f14ab2abeb54f
Author: datallah at pidgin.im
Date: 2009-04-30T05:16:29
Branch: im.pidgin.pidgin.2.5.6
URL: http://d.pidgin.im/viewmtn/revision/info/4e079652a03cd6088bd41b56639b7352c1036981

Modified files:
        libpurple/protocols/bonjour/mdns_win32.c

ChangeLog: 

Backport ab47b66449b213d6fbfc728cc1e8c161bed87755 (#8782 - Fix persistent Bonjour buddies.)

-------------- next part --------------
============================================================
--- libpurple/protocols/bonjour/mdns_win32.c	6ee6360a9961b40e98aee96a236f8e7e0ee1fa2f
+++ libpurple/protocols/bonjour/mdns_win32.c	3204f78dabd32a7ab07290d66a1529c122897e70
@@ -169,15 +169,18 @@ _mdns_resolve_host_callback(GSList *host
 	gboolean delete_buddy = FALSE;
 	PurpleBuddy *pb = NULL;
 
+	if ((pb = purple_find_buddy(args->account, args->res_data->name))) {
+		if (pb->proto_data != args->bb) {
+			purple_debug_error("bonjour", "Found purple buddy for %s not matching bonjour buddy record.",
+				args->res_data->name);
+			goto cleanup;
+		}
 	/* Make sure that the BonjourBuddy associated with this request is still around */
-	if (g_slist_find(pending_buddies, args->bb) == NULL)
+	} else if (g_slist_find(pending_buddies, args->bb) == NULL) {
+		purple_debug_error("bonjour", "host resolution - complete, but buddy no longer pending.\n");
 		goto cleanup;
+	}
 
-	if ((pb = purple_find_buddy(args->account, args->bb->name)))
-		if (pb->proto_data != args->bb)
-			purple_debug_error("bonjour", "Found purple buddy for %s not matching bonjour buddy record. "
-				"This is going to be ugly!.\n", args->bb->name);
-
 	if (!hosts || !hosts->data) {
 		purple_debug_error("bonjour", "host resolution - callback error.\n");
 		delete_buddy = TRUE;


More information about the Commits mailing list