diff libpurple/protocols/bonjour/buddy.c @ 18858:f773aa054dca

Clear bonjour buddy values before resetting them so that we notice value removals.
author Daniel Atallah <daniel.atallah@gmail.com>
date Thu, 09 Aug 2007 22:49:53 +0000
parents 2bf2bd713955
children 2d6d936867bc
line wrap: on
line diff
--- a/libpurple/protocols/bonjour/buddy.c	Thu Aug 09 22:37:06 2007 +0000
+++ b/libpurple/protocols/bonjour/buddy.c	Thu Aug 09 22:49:53 2007 +0000
@@ -42,6 +42,26 @@
 	return buddy;
 }
 
+#define _B_CLR(x) g_free(x); x = NULL;
+
+void clear_bonjour_buddy_values(BonjourBuddy *buddy) {
+
+	_B_CLR(buddy->first)
+	_B_CLR(buddy->email);
+	_B_CLR(buddy->ext);
+	_B_CLR(buddy->jid);
+	_B_CLR(buddy->last);
+	_B_CLR(buddy->msg);
+	_B_CLR(buddy->nick);
+	_B_CLR(buddy->node);
+	_B_CLR(buddy->phsh);
+	_B_CLR(buddy->status);
+	_B_CLR(buddy->vc);
+	_B_CLR(buddy->ver);
+	_B_CLR(buddy->AIM);
+
+}
+
 void
 set_bonjour_buddy_value(BonjourBuddy* buddy, const char *record_key, const char *value, uint32_t len){
 	gchar **fld = NULL;