From 1a87d7be3e2265734edee9909501ed36ebd8dd42 Mon Sep 17 00:00:00 2001 From: Michael Vetter Date: Tue, 25 Feb 2020 14:36:20 +0100 Subject: [PATCH] Only use enc_char in win_print_incoming() when needed Fixes potential memory leak too. --- src/ui/window.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/ui/window.c b/src/ui/window.c index 360ed822..b9c7ca36 100644 --- a/src/ui/window.c +++ b/src/ui/window.c @@ -1101,7 +1101,6 @@ _win_correct(ProfWin *window, const char *const message, const char *const id, c void win_print_incoming(ProfWin *window, const char *const display_name_from, ProfMessage *message) { - char *enc_char = strdup("-"); int flags = NO_ME; if (!message->trusted) { @@ -1112,7 +1111,9 @@ win_print_incoming(ProfWin *window, const char *const display_name_from, ProfMes { case WIN_CHAT: { + char *enc_char; ProfChatWin *chatwin = (ProfChatWin*)window; + if (chatwin->incoming_char) { enc_char = strdup(chatwin->incoming_char); } else if (message->enc == PROF_MSG_ENC_OTR) { @@ -1121,6 +1122,8 @@ win_print_incoming(ProfWin *window, const char *const display_name_from, ProfMes enc_char = prefs_get_pgp_char(); } else if (message->enc == PROF_MSG_ENC_OMEMO) { enc_char = prefs_get_omemo_char(); + } else { + enc_char = strdup("-"); } if (prefs_get_boolean(PREF_CORRECTION_ALLOW) && message->replace_id) {