Mercurial > ~mikael > mcabber > hg
diff mcabber/src/jabglue.c @ 1383:d9606bd03144
Small code cleanup
author | Mikael Berthe <mikael@lilotux.net> |
---|---|
date | Sun, 02 Dec 2007 13:38:44 +0100 |
parents | 40095d413da9 |
children | f762805b3f42 |
line wrap: on
line diff
--- a/mcabber/src/jabglue.c Sun Dec 02 13:04:57 2007 +0100 +++ b/mcabber/src/jabglue.c Sun Dec 02 13:38:44 2007 +0100 @@ -96,15 +96,16 @@ char *compose_jid(const char *username, const char *servername, const char *resource) { - char *fjid = g_new(char, 3 + - strlen(username) + strlen(servername) + strlen(resource)); - strcpy(fjid, username); + char *fjid; + if (!strchr(fjid, JID_DOMAIN_SEPARATOR)) { - strcat(fjid, JID_DOMAIN_SEPARATORSTR); - strcat(fjid, servername); + fjid = g_strdup_printf("%s%c%s%c%s", username, + JID_DOMAIN_SEPARATOR, servername, + JID_RESOURCE_SEPARATOR, resource); + } else { + fjid = g_strdup_printf("%s%c%s", username, + JID_RESOURCE_SEPARATOR, resource); } - strcat(fjid, JID_RESOURCE_SEPARATORSTR); - strcat(fjid, resource); return fjid; } @@ -2463,7 +2464,7 @@ xmlnode x; char *body = NULL; char *enc = NULL; - char *tmp = NULL; + char *chatmsg = NULL; time_t timestamp = 0L; body = xmlnode_get_tag_data(xmldata, "body"); @@ -2499,12 +2500,11 @@ // The topic is displayed in the chat status line, so refresh now. scr_UpdateChatStatus(TRUE); } else { // Chat message - tmp = g_new(char, (body ? strlen(body) : 0) + strlen(p) + 4); - *tmp = '['; - strcpy(tmp+1, p); - strcat(tmp, "]\n"); - if (body) strcat(tmp, body); - body = tmp; + if (body) + chatmsg = g_strdup_printf("[%s]\n%s", p, body); + else + chatmsg = g_strdup_printf("[%s]\n", p); + body = chatmsg; } } @@ -2537,7 +2537,7 @@ if (x && !strcmp(xmlnode_get_name(x), "x")) got_muc_message(from, x); } - g_free(tmp); + g_free(chatmsg); } static void handle_state_events(char *from, xmlnode xmldata)