diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/command/commands.c | 14 | ||||
-rw-r--r-- | src/ui/buffer.c | 12 |
2 files changed, 8 insertions, 18 deletions
diff --git a/src/command/commands.c b/src/command/commands.c index 045ad00a..ed4afa80 100644 --- a/src/command/commands.c +++ b/src/command/commands.c @@ -1104,15 +1104,11 @@ cmd_msg(gchar **args, struct cmd_help_t help) cons_show_error("Failed to send message. Please check OTR policy"); return TRUE; } else if (policy == PROF_OTRPOLICY_OPPORTUNISTIC) { - char *otr_base_tag = OTRL_MESSAGE_TAG_BASE; - char *otr_v2_tag = OTRL_MESSAGE_TAG_V2; - int N = strlen(otr_base_tag) + strlen(otr_v2_tag) + strlen(msg) + 1; - char *temp = (char *) malloc( (unsigned) N*sizeof(char *) ); - strcpy( temp , msg ); - strcat( temp , otr_base_tag); - strcat( temp, otr_v2_tag); - message_send(temp, usr_jid); - free(temp); + GString *otr_message = g_string_new(msg); + g_string_append(otr_message, OTRL_MESSAGE_TAG_BASE); + g_string_append(otr_message, OTRL_MESSAGE_TAG_V2); + message_send(otr_message->str, usr_jid); + g_string_free(otr_message, TRUE); } else { message_send(msg, usr_jid); } diff --git a/src/ui/buffer.c b/src/ui/buffer.c index ab5af17d..a1a992b1 100644 --- a/src/ui/buffer.c +++ b/src/ui/buffer.c @@ -87,15 +87,9 @@ buffer_push(ProfBuff buffer, const char show_char, const char * const date_fmt, e->show_char = show_char; e->flags = flags; e->attrs = attrs; - - e->date_fmt = malloc(strlen(date_fmt)+1); - strcpy(e->date_fmt, date_fmt); - - e->from = malloc(strlen(from)+1); - strcpy(e->from, from); - - e->message = malloc(strlen(message)+1); - strcpy(e->message, message); + e->date_fmt = strdup(date_fmt); + e->from = strdup(from); + e->message = strdup(message); if (g_slist_length(buffer->entries) == BUFF_SIZE) { _free_entry(buffer->entries->data); |