All pastes #99029 Raw Edit

Anonymous

public text v1 · immutable
#99029 ·published 2006-07-25 00:07 UTC
rendered paste body
Index: src/privacy.c
===================================================================
--- src/privacy.c	(revision 16563)
+++ src/privacy.c	(working copy)
@@ -41,16 +41,17 @@
 	name = g_strdup(gaim_normalize(account, who));
 
 	for (l = account->permit; l != NULL; l = l->next) {
-		if (!gaim_utf8_strcasecmp(name, gaim_normalize(account, (char *)l->data)))
+		if (!gaim_utf8_strcasecmp(name, (char *)l->data))
 			break;
 	}
 
-	g_free(name);
-
 	if (l != NULL)
+	{
+		g_free(name);
 		return FALSE;
+	}
 
-	account->permit = g_slist_append(account->permit, g_strdup(who));
+	account->permit = g_slist_append(account->permit, name);
 
 	if (!local_only && gaim_account_is_connected(account))
 		serv_add_permit(gaim_account_get_connection(account), who);
@@ -73,15 +74,13 @@
 	g_return_val_if_fail(account != NULL, FALSE);
 	g_return_val_if_fail(who     != NULL, FALSE);
 
-	name = g_strdup(gaim_normalize(account, who));
+	name = gaim_normalize(account, who);
 
 	for (l = account->permit; l != NULL; l = l->next) {
-		if (!gaim_utf8_strcasecmp(name, gaim_normalize(account, (char *)l->data)))
+		if (!gaim_utf8_strcasecmp(name, (char *)l->data))
 			break;
 	}
 
-	g_free(name);
-
 	if (l == NULL)
 		return FALSE;
 
@@ -116,12 +115,13 @@
 			break;
 	}
 
-	g_free(name);
-
 	if (l != NULL)
+	{
+		g_free(name);
 		return FALSE;
+	}
 
-	account->deny = g_slist_append(account->deny, g_strdup(who));
+	account->deny = g_slist_append(account->deny, name);
 
 	if (!local_only && gaim_account_is_connected(account))
 		serv_add_deny(gaim_account_get_connection(account), who);
@@ -144,15 +144,13 @@
 	g_return_val_if_fail(account != NULL, FALSE);
 	g_return_val_if_fail(who     != NULL, FALSE);
 
-	name = g_strdup(gaim_normalize(account, who));
+	name = gaim_normalize(account, who);
 
 	for (l = account->deny; l != NULL; l = l->next) {
-		if (!gaim_utf8_strcasecmp(name, gaim_normalize(account, (char *)l->data)))
+		if (!gaim_utf8_strcasecmp(name, (char *)l->data))
 			break;
 	}
 
-	g_free(name);
-
 	if (l == NULL)
 		return FALSE;
 
@@ -184,15 +182,17 @@
 			return FALSE;
 
 		case GAIM_PRIVACY_ALLOW_USERS:
+			who = gaim_normalize(account, who);
 			for (list=account->permit; list!=NULL; list=list->next) {
-				if (!gaim_utf8_strcasecmp(who, gaim_normalize(account, (char *)list->data)))
+				if (!gaim_utf8_strcasecmp(who, (char *)list->data))
 					return TRUE;
 			}
 			return FALSE;
 
 		case GAIM_PRIVACY_DENY_USERS:
+			who = gaim_normalize(account, who);
 			for (list=account->deny; list!=NULL; list=list->next) {
-				if (!gaim_utf8_strcasecmp(who, gaim_normalize( account, (char *)list->data )))
+				if (!gaim_utf8_strcasecmp(who, (char *)list->data ))
 					return FALSE;
 			}
 			return TRUE;