Mercurial > pidgin
diff libpurple/protocols/myspace/message.c @ 18895:f732d072b118
Change all code to better match the style of libpurple - use 8-space tabs
for indentation everywhere. Spaces are still used for alignment when needed,
as described on http://derkarl.org/why_to_tabs.html (ack for [^\t]\t to ensure
tabs are only being used for indentation). Lots of vim regexes made this
transformation possible.
Also cuddled a few braces that I missed before.
This is a big commit, but there are no actual code changes.
author | Jeffrey Connelly <jaconnel@calpoly.edu> |
---|---|
date | Sat, 11 Aug 2007 05:53:11 +0000 |
parents | 7db556e97dd1 |
children | d0be4366e876 |
line wrap: on
line diff
--- a/libpurple/protocols/myspace/message.c Sat Aug 11 05:02:23 2007 +0000 +++ b/libpurple/protocols/myspace/message.c Sat Aug 11 05:53:11 2007 +0000 @@ -32,13 +32,13 @@ /* Escape codes and associated replacement text, used for protocol message * escaping and unescaping. */ static struct MSIM_ESCAPE_REPLACEMENT { - gchar *code; - gchar *text; + gchar *code; + gchar *text; } msim_escape_replacements[] = { - { "/1", "/" }, - { "/2", "\\" }, - /* { "/3", "|" }, */ /* Not used here -- only for within arrays */ - { NULL, NULL } + { "/1", "/" }, + { "/2", "\\" }, + /* { "/3", "|" }, */ /* Not used here -- only for within arrays */ + { NULL, NULL } }; /** @@ -54,21 +54,21 @@ { gchar *tmp, *msg; guint i; - struct MSIM_ESCAPE_REPLACEMENT* replacement; + struct MSIM_ESCAPE_REPLACEMENT* replacement; - /* Freed in loop below. */ - msg = g_strdup(original_msg); + /* Freed in loop below. */ + msg = g_strdup(original_msg); /* Replace each code in msim_replacement_code with * corresponding entry in msim_replacement_text. */ - for (i = 0; (replacement = &msim_escape_replacements[i]); ++i) { - gchar *code, *text; + for (i = 0; (replacement = &msim_escape_replacements[i]); ++i) { + gchar *code, *text; - code = replacement->code; - text = replacement->text; + code = replacement->code; + text = replacement->text; - if (!code || !text) - break; + if (!code || !text) + break; if (escape) { tmp = str_replace(msg, text, code); @@ -115,9 +115,9 @@ if (not_empty) { return msim_msg_new_v(argp); - } else { + } else { return NULL; - } + } } /** Create a new message from va_list and its first argument. @@ -134,9 +134,9 @@ MsimMessageType type; MsimMessage *msg; - GString *gs; - GList *gl; - MsimMessage *dict; + GString *gs; + GList *gl; + MsimMessage *dict; /* Begin with an empty message. */ @@ -167,36 +167,36 @@ break; case MSIM_TYPE_BINARY: - gs = va_arg(argp, GString *); + gs = va_arg(argp, GString *); - g_return_val_if_fail(gs != NULL, FALSE); + 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: - gl = va_arg(argp, GList *); + /* msim_msg_free() will free this GString the caller created. */ + msg = msim_msg_append(msg, key, type, gs); + break; + + case MSIM_TYPE_LIST: + 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: - dict = va_arg(argp, MsimMessage *); + case MSIM_TYPE_DICTIONARY: + 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); break; } } while(key); - va_end(argp); + va_end(argp); return msg; } @@ -205,16 +205,16 @@ GList * msim_msg_list_copy(GList *old) { - GList *new_list; + GList *new_list; - new_list = NULL; + new_list = NULL; - /* Deep copy (g_list_copy is shallow). Copy each string. */ - for (; old != NULL; old = g_list_next(old)) { - new_list = g_list_append(new_list, g_strdup(old->data)); - } + /* Deep copy (g_list_copy is shallow). Copy each string. */ + for (; old != NULL; old = g_list_next(old)) { + new_list = g_list_append(new_list, g_strdup(old->data)); + } - return new_list; + return new_list; } /** Free a GList * of gchar * strings. */ @@ -222,32 +222,32 @@ msim_msg_list_free(GList *l) { - for (; l != NULL; l = g_list_next(l)) { - g_free((gchar *)(l->data)); - } - g_list_free(l); + for (; l != NULL; l = g_list_next(l)) { + g_free((gchar *)(l->data)); + } + g_list_free(l); } /** Parse a |-separated string into a new GList. Free with msim_msg_list_free(). */ GList * msim_msg_list_parse(const gchar *raw) { - gchar **array; - GList *list; - guint i; + gchar **array; + GList *list; + guint i; - array = g_strsplit(raw, "|", 0); - list = NULL; + array = g_strsplit(raw, "|", 0); + list = NULL; - /* TODO: escape/unescape /3 <-> | within list elements */ - - for (i = 0; array[i] != NULL; ++i) { - list = g_list_append(list, g_strdup(array[i])); - } + /* TODO: escape/unescape /3 <-> | within list elements */ + + for (i = 0; array[i] != NULL; ++i) { + list = g_list_append(list, g_strdup(array[i])); + } - g_strfreev(array); + g_strfreev(array); - return list; + return list; } /** Clone an individual element. @@ -262,8 +262,8 @@ MsimMessage **new; gpointer new_data; - GString *gs; - MsimMessage *dict; + GString *gs; + MsimMessage *dict; elem = (MsimMessageElement *)data; new = (MsimMessage **)user_data; @@ -279,20 +279,20 @@ new_data = g_strdup((gchar *)elem->data); break; - case MSIM_TYPE_LIST: - new_data = (gpointer)msim_msg_list_copy((GList *)(elem->data)); - break; + case MSIM_TYPE_LIST: + new_data = (gpointer)msim_msg_list_copy((GList *)(elem->data)); + break; case MSIM_TYPE_BINARY: - 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: - dict = (MsimMessage *)elem->data; + case MSIM_TYPE_DICTIONARY: + dict = (MsimMessage *)elem->data; - new_data = msim_msg_clone(dict); - break; + new_data = msim_msg_clone(dict); + break; default: purple_debug_info("msim", "msim_msg_clone_element: unknown type %d\n", elem->type); @@ -315,7 +315,7 @@ if (old == NULL) { return NULL; - } + } new = msim_msg_new(FALSE); @@ -334,7 +334,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(). */ @@ -353,16 +353,16 @@ break; case MSIM_TYPE_DICTIONARY: - msim_msg_free((MsimMessage *)elem->data); + msim_msg_free((MsimMessage *)elem->data); break; case MSIM_TYPE_LIST: - g_list_free((GList *)elem->data); + g_list_free((GList *)elem->data); break; default: purple_debug_info("msim", "msim_msg_free_element_data: " - "not freeing unknown type %d\n", elem->type); + "not freeing unknown type %d\n", elem->type); break; } } @@ -381,7 +381,7 @@ elem = (MsimMessageElement *)data; - msim_msg_free_element_data(elem); + msim_msg_free_element_data(elem); g_free(elem); } @@ -395,7 +395,7 @@ return; } - msim_msg_dump("msim_msg_free: freeing %s", msg); + msim_msg_dump("msim_msg_free: freeing %s", msg); g_list_foreach(msg, msim_msg_free_element, NULL); g_list_free(msg); @@ -409,7 +409,7 @@ gboolean success; raw = msim_msg_pack(msg); - g_return_val_if_fail(raw != NULL, FALSE); + g_return_val_if_fail(raw != NULL, FALSE); success = msim_send_raw(session, raw); g_free(raw); @@ -438,7 +438,7 @@ gboolean success; MsimMessage *msg; va_list argp; - + va_start(argp, session); msg = msim_msg_new_v(argp); @@ -478,7 +478,7 @@ * * @return The new message - must be assigned to as with GList*. For example: * - * msg = msim_msg_append(msg, ...) + * msg = msim_msg_append(msg, ...) * * The data parameter depends on the type given: * @@ -507,7 +507,7 @@ /** Insert a new element into a message, before the given element name. * * @param name_before Name of the element to insert the new element before. If - * could not be found or NULL, new element will be inserted at end. + * could not be found or NULL, new element will be inserted at end. * * See msim_msg_append() for usage of other parameters, and an important note about return value. */ @@ -518,7 +518,7 @@ MsimMessageElement *new_elem; GList *node_before; - new_elem = msim_msg_element_new(name, type, data); + new_elem = msim_msg_element_new(name, type, data); node_before = msim_msg_get_node(msg, name_before); @@ -530,8 +530,8 @@ */ gchar * msim_msg_pack_using(MsimMessage *msg, - GFunc gf, - const gchar *sep, + GFunc gf, + const gchar *sep, const gchar *begin, const gchar *end) { gchar **strings; @@ -573,11 +573,11 @@ gchar *string; GString *gs; gchar *binary; - gchar ***items; /* wow, a pointer to a pointer to a pointer */ - - gchar *s; - GList *gl; - guint i; + gchar ***items; /* wow, a pointer to a pointer to a pointer */ + + gchar *s; + GList *gl; + guint i; elem = (MsimMessageElement *)data; items = user_data; @@ -585,17 +585,17 @@ switch (elem->type) { case MSIM_TYPE_INTEGER: string = g_strdup_printf("%s(integer): %d", elem->name, - GPOINTER_TO_UINT(elem->data)); + GPOINTER_TO_UINT(elem->data)); break; case MSIM_TYPE_RAW: string = g_strdup_printf("%s(raw): %s", elem->name, - elem->data ? (gchar *)elem->data : "(NULL)"); + elem->data ? (gchar *)elem->data : "(NULL)"); break; case MSIM_TYPE_STRING: string = g_strdup_printf("%s(string): %s", elem->name, - elem->data ? (gchar *)elem->data : "(NULL)"); + elem->data ? (gchar *)elem->data : "(NULL)"); break; case MSIM_TYPE_BINARY: @@ -611,36 +611,37 @@ break; case MSIM_TYPE_DICTIONARY: - 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: - 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: string = g_strdup_printf("%s(unknown type %d", - elem->name ? elem->name : "(NULL)", elem->type); + elem->name ? elem->name : "(NULL)", elem->type); break; } @@ -655,15 +656,15 @@ void msim_msg_dump(const gchar *fmt_string, MsimMessage *msg) { - gchar *debug_str; + gchar *debug_str; - g_return_if_fail(fmt_string != NULL); + g_return_if_fail(fmt_string != NULL); - debug_str = msim_msg_dump_to_str(msg); - - g_return_if_fail(debug_str != NULL); + debug_str = msim_msg_dump_to_str(msg); + + g_return_if_fail(debug_str != NULL); - purple_debug_info("msim_msg_dump", "debug_str=%s\n", debug_str); + purple_debug_info("msim_msg_dump", "debug_str=%s\n", debug_str); purple_debug_info("msim", fmt_string, debug_str); @@ -687,7 +688,7 @@ "\n", "<MsimMessage: \n", "\n/MsimMessage>"); } - return debug_str; + return debug_str; } /** Return a message element data as a new string for a raw protocol message, converting from other types (integer, etc.) if necessary. @@ -701,10 +702,10 @@ gchar * msim_msg_pack_element_data(MsimMessageElement *elem) { - GString *gs; - GList *gl; + GString *gs; + GList *gl; - g_return_val_if_fail(elem != NULL, NULL); + g_return_val_if_fail(elem != NULL, NULL); switch (elem->type) { case MSIM_TYPE_INTEGER: @@ -716,19 +717,19 @@ case MSIM_TYPE_STRING: /* Strings get escaped. msim_escape() creates a new string. */ - g_return_val_if_fail(elem->data != NULL, NULL); + g_return_val_if_fail(elem->data != NULL, NULL); return elem->data ? msim_escape((gchar *)elem->data) : - g_strdup("(NULL)"); + g_strdup("(NULL)"); case MSIM_TYPE_BINARY: - 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. - * Only used by dictionaries, see msim_msg_pack_element_dict. */ - return elem->data ? g_strdup("On") : g_strdup("Off"); + * Only used by dictionaries, see msim_msg_pack_element_dict. */ + return elem->data ? g_strdup("On") : g_strdup("Off"); case MSIM_TYPE_DICTIONARY: /* TODO: pack using k=v\034k2=v2\034... */ @@ -736,22 +737,22 @@ case MSIM_TYPE_LIST: /* Pack using a|b|c|d|... */ - 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, "|"); - } - - return gs->str; + 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, "|"); + } + + return gs->str; default: purple_debug_info("msim", "field %s, unknown type %d\n", - elem->name ? elem->name : "(NULL)", - elem->type); + elem->name ? elem->name : "(NULL)", + elem->type); return NULL; } } @@ -763,11 +764,11 @@ static void msim_msg_pack_element_dict(gpointer data, gpointer user_data) { - MsimMessageElement *elem; - gchar *string, *data_string, ***items; + MsimMessageElement *elem; + gchar *string, *data_string, ***items; - elem = (MsimMessageElement *)data; - items = (gchar ***)user_data; + elem = (MsimMessageElement *)data; + items = (gchar ***)user_data; /* Exclude elements beginning with '_' from packed protocol messages. */ if (elem->name[0] == '_') { @@ -776,7 +777,7 @@ data_string = msim_msg_pack_element_data(elem); - g_return_if_fail(data_string != NULL); + g_return_if_fail(data_string != NULL); switch (elem->type) { /* These types are represented by key name/value pairs (converted above). */ @@ -786,7 +787,7 @@ case MSIM_TYPE_BINARY: case MSIM_TYPE_DICTIONARY: case MSIM_TYPE_LIST: - case MSIM_TYPE_BOOLEAN: /* Boolean is On or Off */ + case MSIM_TYPE_BOOLEAN: /* Boolean is On or Off */ string = g_strconcat(elem->name, "=", data_string, NULL); break; @@ -883,9 +884,9 @@ gchar * msim_msg_pack_dict(MsimMessage *msg) { - g_return_val_if_fail(msg != NULL, NULL); + g_return_val_if_fail(msg != NULL, NULL); - return msim_msg_pack_using(msg, msim_msg_pack_element_dict, "\034", "", ""); + return msim_msg_pack_using(msg, msim_msg_pack_element_dict, "\034", "", ""); } /** @@ -899,37 +900,37 @@ msim_parse(gchar *raw) { MsimMessage *msg; - gchar *token; - gchar **tokens; - gchar *key; - gchar *value; - int i; + gchar *token; + gchar **tokens; + gchar *key; + gchar *value; + int i; - g_return_val_if_fail(raw != NULL, NULL); + g_return_val_if_fail(raw != NULL, NULL); - purple_debug_info("msim", "msim_parse: got <%s>\n", raw); + purple_debug_info("msim", "msim_parse: got <%s>\n", raw); - key = NULL; + key = NULL; - /* All messages begin with a \. */ - 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? */ + /* All messages begin with a \. */ + 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? */ - g_free(raw); - return NULL; - } + g_free(raw); + return NULL; + } - msg = msim_msg_new(FALSE); + msg = msim_msg_new(FALSE); - for (tokens = g_strsplit(raw + 1, "\\", 0), i = 0; - (token = tokens[i]); - i++) { + for (tokens = g_strsplit(raw + 1, "\\", 0), i = 0; + (token = tokens[i]); + i++) { #ifdef MSIM_DEBUG_PARSE - purple_debug_info("msim", "tok=<%s>, i%2=%d\n", token, i % 2); + 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; @@ -941,80 +942,80 @@ #ifdef MSIM_DEBUG_PARSE purple_debug_info("msim", "insert string: |%s|=|%s|\n", key, value); #endif - } else { + } else { /* Even numbered indexes are key names. */ - key = token; - } - } - g_strfreev(tokens); + key = token; + } + } + g_strfreev(tokens); - /* Can free now since all data was copied to hash key/values */ - g_free(raw); + /* Can free now since all data was copied to hash key/values */ + g_free(raw); - return msg; + return msg; } /** * Parse a \x1c-separated "dictionary" of key=value pairs into a hash table. * * @param body_str The text of the dictionary to parse. Often the - * value for the 'body' field. + * value for the 'body' field. * * @return Hash table of the keys and values. Must g_hash_table_destroy() when done. */ GHashTable * msim_parse_body(const gchar *body_str) { - GHashTable *table; - gchar *item; - gchar **items; - gchar **elements; - guint i; + GHashTable *table; + gchar *item; + gchar **items; + gchar **elements; + guint i; - g_return_val_if_fail(body_str != NULL, NULL); + g_return_val_if_fail(body_str != NULL, NULL); - table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); + table = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); - for (items = g_strsplit(body_str, "\x1c", 0), i = 0; - (item = items[i]); - i++) { - gchar *key, *value; + for (items = g_strsplit(body_str, "\x1c", 0), i = 0; + (item = items[i]); + i++) { + gchar *key, *value; - elements = g_strsplit(item, "=", 2); + elements = g_strsplit(item, "=", 2); - key = elements[0]; - if (!key) { - purple_debug_info("msim", "msim_parse_body(%s): null key\n", + key = elements[0]; + if (!key) { + purple_debug_info("msim", "msim_parse_body(%s): null key\n", body_str); - g_strfreev(elements); - break; - } + g_strfreev(elements); + break; + } - value = elements[1]; - if (!value) { - purple_debug_info("msim", "msim_parse_body(%s): null value\n", + value = elements[1]; + if (!value) { + purple_debug_info("msim", "msim_parse_body(%s): null value\n", body_str); - g_strfreev(elements); - break; - } + g_strfreev(elements); + break; + } #ifdef MSIM_DEBUG_PARSE - purple_debug_info("msim", "-- %s: %s\n", key ? key : "(NULL)", - value ? value : "(NULL)"); + purple_debug_info("msim", "-- %s: %s\n", key ? key : "(NULL)", + value ? value : "(NULL)"); #endif - /* XXX: This overwrites duplicates. */ - /* TODO: make the GHashTable values be GList's, and append to the list if - * there is already a value of the same key name. This is important for - * the WebChallenge message. */ - g_hash_table_insert(table, g_strdup(key), g_strdup(value)); - - g_strfreev(elements); - } + /* XXX: This overwrites duplicates. */ + /* TODO: make the GHashTable values be GList's, and append to the list if + * there is already a value of the same key name. This is important for + * the WebChallenge message. */ + g_hash_table_insert(table, g_strdup(key), g_strdup(value)); + + g_strfreev(elements); + } - g_strfreev(items); + g_strfreev(items); - return table; + return table; } /** Search for and return the node in msg, matching name, or NULL. @@ -1046,7 +1047,7 @@ if (strcmp(elem->name, name) == 0) { return i; - } + } } return NULL; } @@ -1069,9 +1070,9 @@ node = msim_msg_get_node(msg, name); if (node) { return (MsimMessageElement *)node->data; - } else { + } else { return NULL; - } + } } /** Return the data of an element of a given name, as a string. @@ -1090,7 +1091,7 @@ MsimMessageElement *elem; elem = msim_msg_get(msg, name); - g_return_val_if_fail(elem != NULL , NULL); + g_return_val_if_fail(elem != NULL , NULL); switch (elem->type) { case MSIM_TYPE_INTEGER: @@ -1116,59 +1117,58 @@ GList * msim_msg_get_list(MsimMessage *msg, const gchar *name) { - MsimMessageElement *elem; + MsimMessageElement *elem; - elem = msim_msg_get(msg, name); - if (!elem) { - return NULL; - } + elem = msim_msg_get(msg, name); + if (!elem) { + return NULL; + } - switch (elem->type) { - case MSIM_TYPE_LIST: - return msim_msg_list_copy((GList *)elem->data); + switch (elem->type) { + case MSIM_TYPE_LIST: + return msim_msg_list_copy((GList *)elem->data); - case MSIM_TYPE_RAW: - return msim_msg_list_parse((gchar *)elem->data); + case MSIM_TYPE_RAW: + return msim_msg_list_parse((gchar *)elem->data); - default: - purple_debug_info("msim_msg_get_list", "type %d unknown, name %s\n", - elem->type, name ? name : "(NULL)"); - return NULL; - } + default: + purple_debug_info("msim_msg_get_list", "type %d unknown, name %s\n", + elem->type, name ? name : "(NULL)"); + return NULL; + } } /** Parse a \034-deliminated and =-separated string into a dictionary. TODO */ MsimMessage * msim_msg_dictionary_parse(gchar *raw) { - /* TODO - get code from msim_parse_body, but parse into MsimMessage */ - return NULL; + /* TODO - get code from msim_parse_body, but parse into MsimMessage */ + return NULL; } /** Return an element as a new dictionary. Caller frees with msim_msg_free(). */ MsimMessage * msim_msg_get_dictionary(MsimMessage *msg, const gchar *name) { - MsimMessageElement *elem; + MsimMessageElement *elem; - elem = msim_msg_get(msg, name); - if (!elem) - { - return NULL; - } + elem = msim_msg_get(msg, name); + if (!elem) { + return NULL; + } - switch (elem->type) { - case MSIM_TYPE_DICTIONARY: - return msim_msg_clone((MsimMessage *)elem->data); - - case MSIM_TYPE_RAW: - return msim_msg_dictionary_parse((gchar *)elem->data); + switch (elem->type) { + case MSIM_TYPE_DICTIONARY: + return msim_msg_clone((MsimMessage *)elem->data); + + case MSIM_TYPE_RAW: + return msim_msg_dictionary_parse((gchar *)elem->data); - default: - purple_debug_info("msim_msg_get_dictionary", "type %d unknown, name %s\n", - elem->type, name ? name : "(NULL)"); - return NULL; - } + default: + purple_debug_info("msim_msg_get_dictionary", "type %d unknown, name %s\n", + elem->type, name ? name : "(NULL)"); + return NULL; + } } /** Return the data of an element of a given name, as an integer. @@ -1190,7 +1190,7 @@ if (!elem) { return 0; - } + } switch (elem->type) { case MSIM_TYPE_INTEGER: @@ -1220,12 +1220,12 @@ { MsimMessageElement *elem; - GString *gs; + GString *gs; elem = msim_msg_get(msg, name); - if (!elem) { - return FALSE; - } + if (!elem) { + return FALSE; + } switch (elem->type) { case MSIM_TYPE_RAW: @@ -1253,15 +1253,15 @@ return TRUE; case MSIM_TYPE_BINARY: - 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