diff libpurple/protocols/myspace/message.c @ 18890:00499df91ffe

Use cuddled if's etc. everywhere, to better match style of Pidgin/libpurple.
author Jeffrey Connelly <jaconnel@calpoly.edu>
date Sat, 11 Aug 2007 04:34:20 +0000
parents a3a5b2e9079a
children 7db556e97dd1
line wrap: on
line diff
--- a/libpurple/protocols/myspace/message.c	Sat Aug 11 04:07:39 2007 +0000
+++ b/libpurple/protocols/myspace/message.c	Sat Aug 11 04:34:20 2007 +0000
@@ -31,8 +31,7 @@
 
 /* Escape codes and associated replacement text, used for protocol message
  * escaping and unescaping. */
-static struct MSIM_ESCAPE_REPLACEMENT
-{
+static struct MSIM_ESCAPE_REPLACEMENT {
     gchar *code;
     gchar *text;
 } msim_escape_replacements[] = {
@@ -59,8 +58,7 @@
 
 	/* Replace each code in msim_replacement_code with
 	 * corresponding entry in msim_replacement_text. */
-    for (i = 0; (replacement = &msim_escape_replacements[i]); ++i)	
-    {
+    for (i = 0; (replacement = &msim_escape_replacements[i]); ++i)	{
         gchar *code, *text;
 
         code = replacement->code;
@@ -69,12 +67,9 @@
         if (!code || !text)
             break;
 
-		if (escape)
-		{
+		if (escape) {
 			tmp = str_replace(msg, text, code);
-		}
-		else
-		{
+		} else {
 			tmp = str_replace(msg, code, text);
 		}
 		g_free(msg);
@@ -115,10 +110,11 @@
 
 	va_start(argp, not_empty);
 
-	if (not_empty)
+	if (not_empty) {
 		return msim_msg_new_v(argp);
-	else
+    } else {
 		return NULL;
+    }
 }
 
 /** Create a new message from va_list and its first argument.
@@ -135,23 +131,25 @@
 	MsimMessageType type;
 	MsimMessage *msg;
 
+    GString *gs;
+    GList *gl;
+    MsimMessage *dict;
+
+
 	/* Begin with an empty message. */
 	msg = NULL;
 
 	/* Read key, type, value triplets until NULL. */
-	do
-	{
+	do {
 		key = va_arg(argp, gchar *);
-		if (!key)
-		{
+		if (!key) {
 			break;
 		}
 
 		type = va_arg(argp, int);
 
 		/* Interpret variadic arguments. */
-		switch (type)
-		{
+		switch (type) {
 			case MSIM_TYPE_INTEGER: 
 			case MSIM_TYPE_BOOLEAN: 
 				msg = msim_msg_append(msg, key, type, GUINT_TO_POINTER(va_arg(argp, int)));
@@ -166,41 +164,29 @@
 				break;
 
 			case MSIM_TYPE_BINARY:
-                {
-                    GString *gs;
-
-                    gs = va_arg(argp, GString *);
+                gs = va_arg(argp, GString *);
 
-                    g_return_val_if_fail(gs != NULL, FALSE);
-
-                    /* msim_msg_free() will free this GString the caller created. */
-                    msg = msim_msg_append(msg, key, type, gs);
-                    break;
-                }
+                g_return_val_if_fail(gs != NULL, FALSE);
 
+                /* msim_msg_free() will free this GString the caller created. */
+                msg = msim_msg_append(msg, key, type, gs);
+                break;
+            
             case MSIM_TYPE_LIST:
-                {
-                    GList *gl;
-
-                    gl = va_arg(argp, GList *);
+                gl = va_arg(argp, GList *);
 
-                    g_return_val_if_fail(gl != NULL, FALSE);
+                g_return_val_if_fail(gl != NULL, FALSE);
 
-                    msg = msim_msg_append(msg, key, type, gl);
-                    break;
-                }
+                msg = msim_msg_append(msg, key, type, gl);
+                break;
 
             case MSIM_TYPE_DICTIONARY:
-                {
-                    MsimMessage *dict;
-
-                    dict = va_arg(argp, MsimMessage *);
+                dict = va_arg(argp, MsimMessage *);
 
-                    g_return_val_if_fail(dict != NULL, FALSE);
+                g_return_val_if_fail(dict != NULL, FALSE);
 
-                    msg = msim_msg_append(msg, key, type, dict);
-                    break;
-                }
+                msg = msim_msg_append(msg, key, type, dict);
+                break;
 
 			default:
 				purple_debug_info("msim", "msim_send: unknown type %d\n", type);
@@ -221,8 +207,7 @@
     new_list = NULL;
 
     /* Deep copy (g_list_copy is shallow). Copy each string. */
-    for (; old != NULL; old = g_list_next(old))
-    {
+    for (; old != NULL; old = g_list_next(old)) {
         new_list = g_list_append(new_list, g_strdup(old->data));
     }
 
@@ -234,8 +219,7 @@
 msim_msg_list_free(GList *l)
 {
 
-    for (; l != NULL; l = g_list_next(l))
-    {
+    for (; l != NULL; l = g_list_next(l)) {
         g_free((gchar *)(l->data));
     }
     g_list_free(l);
@@ -251,9 +235,10 @@
 
     array = g_strsplit(raw, "|", 0);
     list = NULL;
+
+    /* TODO: escape/unescape /3 <-> | within list elements */
     
-    for (i = 0; array[i] != NULL; ++i)
-    {
+    for (i = 0; array[i] != NULL; ++i) {
         list = g_list_append(list, g_strdup(array[i]));
     }
 
@@ -273,12 +258,14 @@
 	MsimMessageElement *elem;
 	MsimMessage **new;
 	gpointer new_data;
+				
+    GString *gs;
+    MsimMessage *dict;
 
 	elem = (MsimMessageElement *)data;
 	new = (MsimMessage **)user_data;
 
-	switch (elem->type)
-	{
+	switch (elem->type) {
 		case MSIM_TYPE_BOOLEAN:
 		case MSIM_TYPE_INTEGER:
 			new_data = elem->data;
@@ -294,22 +281,14 @@
             break;
 
 		case MSIM_TYPE_BINARY:
-			{
-				GString *gs;
+            gs = (GString *)elem->data;
 
-				gs = (GString *)elem->data;
-
-				new_data = g_string_new_len(gs->str, gs->len);
-			}
+            new_data = g_string_new_len(gs->str, gs->len);
 			break;
         case MSIM_TYPE_DICTIONARY:
-            {
-                MsimMessage *dict;
+            dict = (MsimMessage *)elem->data;
 
-                dict = (MsimMessage *)elem->data;
-
-                new_data = msim_msg_clone(dict);
-            }
+            new_data = msim_msg_clone(dict);
             break;
 
 		default:
@@ -331,8 +310,9 @@
 {
 	MsimMessage *new;
 
-	if (old == NULL)
+	if (old == NULL) {
 		return NULL;
+    }
 
 	new = msim_msg_new(FALSE);
 
@@ -351,8 +331,7 @@
 void
 msim_msg_free_element_data(MsimMessageElement *elem)
 {
-    switch (elem->type)
-	{
+    switch (elem->type) {
 		case MSIM_TYPE_BOOLEAN:
 		case MSIM_TYPE_INTEGER:
 			/* Integer value stored in gpointer - no need to free(). */
@@ -408,8 +387,7 @@
 void 
 msim_msg_free(MsimMessage *msg)
 {
-	if (!msg)
-	{
+	if (!msg) {
 		/* already free as can be */
 		return;
 	}
@@ -572,8 +550,7 @@
 	g_free(joined);
 
 	/* Clean up. */
-	for (i = 0; i < g_list_length(msg); ++i)
-	{
+	for (i = 0; i < g_list_length(msg); ++i) {
 		g_free(strings[i]);
 	}
 
@@ -594,12 +571,15 @@
 	GString *gs;
 	gchar *binary;
 	gchar ***items;	 	/* wow, a pointer to a pointer to a pointer */
+    
+    gchar *s;
+    GList *gl;
+    guint i;
 
 	elem = (MsimMessageElement *)data;
 	items = user_data;
 
-	switch (elem->type)
-	{
+	switch (elem->type) {
 		case MSIM_TYPE_INTEGER:
 			string = g_strdup_printf("%s(integer): %d", elem->name, 
                     GPOINTER_TO_UINT(elem->data));
@@ -628,41 +608,31 @@
 			break;
 
 		case MSIM_TYPE_DICTIONARY:
-            {
-                gchar *s;
-
-                if (!elem->data)
-                    s = g_strdup("(NULL)");
-                else
-                    s = msim_msg_dump_to_str((MsimMessage *)elem->data);
+            if (!elem->data)
+                s = g_strdup("(NULL)");
+            else
+                s = msim_msg_dump_to_str((MsimMessage *)elem->data);
 
-                if (!s)
-                    s = g_strdup("(NULL, couldn't msim_msg_dump_to_str)");
+            if (!s)
+                s = g_strdup("(NULL, couldn't msim_msg_dump_to_str)");
 
-                string = g_strdup_printf("%s(dict): %s", elem->name, s);
+            string = g_strdup_printf("%s(dict): %s", elem->name, s);
 
-                g_free(s);
-            }
+            g_free(s);
 			break;
 			
 		case MSIM_TYPE_LIST:
-            {
-                GString *gs;
-                GList *gl;
-                guint i;
-
-                gs = g_string_new("");
-                g_string_append_printf(gs, "%s(list): \n", elem->name);
+            gs = g_string_new("");
+            g_string_append_printf(gs, "%s(list): \n", elem->name);
 
-                i = 0;
-                for (gl = (GList *)elem->data; gl != NULL; gl = g_list_next(gl))
-                {
-                    g_string_append_printf(gs, " %d. %s\n", i, (gchar *)(gl->data));
-                    ++i;
-                }
-                
-                string = gs->str;
+            i = 0;
+            for (gl = (GList *)elem->data; gl != NULL; gl = g_list_next(gl))
+            {
+                g_string_append_printf(gs, " %d. %s\n", i, (gchar *)(gl->data));
+                ++i;
             }
+            
+            string = gs->str;
 			break;
 
 		default:
@@ -707,8 +677,7 @@
 {
 	gchar *debug_str;
 
-	if (!msg)
-	{
+	if (!msg) {
 		debug_str = g_strdup("<MsimMessage: empty>");
 	} else {
 		debug_str = msim_msg_pack_using(msg, msim_msg_debug_string_element, 
@@ -729,10 +698,12 @@
 gchar *
 msim_msg_pack_element_data(MsimMessageElement *elem)
 {
+    GString *gs;
+    GList *gl;
+
     g_return_val_if_fail(elem != NULL, NULL);
 
-	switch (elem->type)
-	{
+	switch (elem->type) {
 		case MSIM_TYPE_INTEGER:
 			return g_strdup_printf("%d", GPOINTER_TO_UINT(elem->data));
 
@@ -747,13 +718,9 @@
                 g_strdup("(NULL)");
 
 		case MSIM_TYPE_BINARY:
-			{
-				GString *gs;
-
-				gs = (GString *)elem->data;
-				/* Do not escape! */
-				return purple_base64_encode((guchar *)gs->str, gs->len);
-			}
+            gs = (GString *)elem->data;
+            /* Do not escape! */
+            return purple_base64_encode((guchar *)gs->str, gs->len);
 
 		case MSIM_TYPE_BOOLEAN:
 			/* Not used by messages in the wire protocol * -- see msim_msg_pack_element.
@@ -766,23 +733,17 @@
 			
 		case MSIM_TYPE_LIST:
 			/* Pack using a|b|c|d|... */
-            {
-                GString *gs;
-                GList *gl;
-
-                gs = g_string_new("");
+            gs = g_string_new("");
 
-                for (gl = (GList *)elem->data; gl != NULL; gl = g_list_next(gl))
-                {
-                    g_string_append_printf(gs, "%s", (gchar*)(gl->data));
-                    
-                    /* All but last element is separated by a bar. */
-                    if (g_list_next(gl)) 
-                        g_string_append(gs, "|");
-                }
+            for (gl = (GList *)elem->data; gl != NULL; gl = g_list_next(gl)) {
+                g_string_append_printf(gs, "%s", (gchar*)(gl->data));
                 
-                return gs->str;
+                /* All but last element is separated by a bar. */
+                if (g_list_next(gl)) 
+                    g_string_append(gs, "|");
             }
+            
+            return gs->str;
 
 		default:
 			purple_debug_info("msim", "field %s, unknown type %d\n", 
@@ -806,8 +767,7 @@
     items = (gchar ***)user_data;
 
 	/* Exclude elements beginning with '_' from packed protocol messages. */
-	if (elem->name[0] == '_')
-	{
+	if (elem->name[0] == '_') {
 		return;
 	}
 
@@ -815,8 +775,7 @@
 
     g_return_if_fail(data_string != NULL);
 
-	switch (elem->type)
-	{
+	switch (elem->type) {
 		/* These types are represented by key name/value pairs (converted above). */
 		case MSIM_TYPE_INTEGER:
 		case MSIM_TYPE_RAW:
@@ -861,15 +820,13 @@
 	items = (gchar ***)user_data;
 
 	/* Exclude elements beginning with '_' from packed protocol messages. */
-	if (elem->name[0] == '_')
-	{
+	if (elem->name[0] == '_') {
 		return;
 	}
 
 	data_string = msim_msg_pack_element_data(elem);
 
-	switch (elem->type)
-	{
+	switch (elem->type) {
 		/* These types are represented by key name/value pairs (converted above). */
 		case MSIM_TYPE_INTEGER:
 		case MSIM_TYPE_RAW:
@@ -882,8 +839,7 @@
 
 		/* Boolean is represented by absence or presence of name. */
 		case MSIM_TYPE_BOOLEAN:
-			if (GPOINTER_TO_UINT(elem->data))
-			{
+			if (GPOINTER_TO_UINT(elem->data)) {
 				/* True - leave in, with blank value. */
 				string = g_strdup_printf("%s\\", elem->name);
 			} else {
@@ -953,8 +909,7 @@
     key = NULL;
 
     /* All messages begin with a \. */
-    if (raw[0] != '\\' || raw[1] == 0)
-    {
+    if (raw[0] != '\\' || raw[1] == 0) {
         purple_debug_info("msim", "msim_parse: incomplete/bad string, "
                 "missing initial backslash: <%s>\n", raw);
         /* XXX: Should we try to recover, and read to first backslash? */
@@ -967,13 +922,11 @@
 
     for (tokens = g_strsplit(raw + 1, "\\", 0), i = 0; 
             (token = tokens[i]);
-            i++)
-    {
+            i++) {
 #ifdef MSIM_DEBUG_PARSE
         purple_debug_info("msim", "tok=<%s>, i%2=%d\n", token, i % 2);
 #endif
-        if (i % 2)
-        {
+        if (i % 2) {
 			/* Odd-numbered ordinal is a value. */
 
 			value = token;
@@ -1021,15 +974,13 @@
  
     for (items = g_strsplit(body_str, "\x1c", 0), i = 0; 
         (item = items[i]);
-        i++)
-    {
+        i++) {
         gchar *key, *value;
 
         elements = g_strsplit(item, "=", 2);
 
         key = elements[0];
-        if (!key)
-        {
+        if (!key) {
             purple_debug_info("msim", "msim_parse_body(%s): null key\n", 
 					body_str);
             g_strfreev(elements);
@@ -1037,8 +988,7 @@
         }
 
         value = elements[1];
-        if (!value)
-        {
+        if (!value) {
             purple_debug_info("msim", "msim_parse_body(%s): null value\n", 
 					body_str);
             g_strfreev(elements);
@@ -1080,21 +1030,20 @@
 {
 	GList *i;
 
-	if (!name)
-	{
+	if (!name) {
 		return NULL;
 	}
 
 	/* Linear search for the given name. O(n) but n is small. */
-	for (i = g_list_first(msg); i != NULL; i = g_list_next(i))
-	{
+	for (i = g_list_first(msg); i != NULL; i = g_list_next(i)) {
 		MsimMessageElement *elem;
 
 		elem = i->data;
 		g_return_val_if_fail(elem != NULL, NULL);
 
-		if (strcmp(elem->name, name) == 0)
+		if (strcmp(elem->name, name) == 0) {
 			return i;
+        }
 	}
 	return NULL;
 }
@@ -1115,10 +1064,11 @@
 	GList *node;
 
 	node = msim_msg_get_node(msg, name);
-	if (node)
+	if (node) {
 		return (MsimMessageElement *)node->data;
-	else
+    } else {
 		return NULL;
+    }
 }
 
 /** Return the data of an element of a given name, as a string.
@@ -1139,8 +1089,7 @@
 	elem = msim_msg_get(msg, name);
     g_return_val_if_fail(elem != NULL , NULL);
 
-	switch (elem->type)
-	{
+	switch (elem->type) {
 		case MSIM_TYPE_INTEGER:
 			return g_strdup_printf("%d", GPOINTER_TO_UINT(elem->data));
 
@@ -1167,11 +1116,11 @@
     MsimMessageElement *elem;
 
     elem = msim_msg_get(msg, name);
-    if (!elem)
+    if (!elem) {
         return NULL;
+    }
 
-    switch (elem->type)
-    {
+    switch (elem->type) {
         case MSIM_TYPE_LIST:
             return msim_msg_list_copy((GList *)elem->data);
 
@@ -1201,10 +1150,11 @@
 
     elem = msim_msg_get(msg, name);
     if (!elem)
+    {
         return NULL;
+    }
 
-    switch (elem->type)
-    {
+    switch (elem->type) {
         case MSIM_TYPE_DICTIONARY:
             return msim_msg_clone((MsimMessage *)elem->data);
         
@@ -1235,11 +1185,11 @@
 
 	elem = msim_msg_get(msg, name);
 
-	if (!elem)
+	if (!elem) {
 		return 0;
+    }
 
-	switch (elem->type)
-	{
+	switch (elem->type) {
 		case MSIM_TYPE_INTEGER:
 			return GPOINTER_TO_UINT(elem->data);
 
@@ -1266,13 +1216,15 @@
 		gchar **binary_data, gsize *binary_length)
 {
 	MsimMessageElement *elem;
+				
+    GString *gs;
 
 	elem = msim_msg_get(msg, name);
-    if (!elem)
+    if (!elem) {
         return FALSE;
+    }
 
-	switch (elem->type)
-	{
+	switch (elem->type) {
 		case MSIM_TYPE_RAW:
 			 /* Incoming messages are tagged with MSIM_TYPE_RAW, and
 			 * converted appropriately. They can still be "strings", just they won't
@@ -1298,19 +1250,15 @@
 			return TRUE;
 
 		case MSIM_TYPE_BINARY:
-			{
-				GString *gs;
-
-				gs = (GString *)elem->data;
+            gs = (GString *)elem->data;
 
-				/* Duplicate data, so caller can g_free() it. */
-				*binary_data = g_new0(char, gs->len);
-				memcpy(*binary_data, gs->str, gs->len);
+            /* Duplicate data, so caller can g_free() it. */
+            *binary_data = g_new0(char, gs->len);
+            memcpy(*binary_data, gs->str, gs->len);
 
-				*binary_length = gs->len;
+            *binary_length = gs->len;
 
-				return TRUE;
-			}
+            return TRUE;
 
 
 			/* Rejected because if it isn't already a GString, have to g_new0 it and