about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorMichael Vetter <jubalh@iodoru.org>2020-02-25 14:36:20 +0100
committerMichael Vetter <jubalh@iodoru.org>2020-02-25 14:52:38 +0100
commit1a87d7be3e2265734edee9909501ed36ebd8dd42 (patch)
tree8f3baaa2bac103a5dcd4fa74ff147deb448fc8b2 /src
parentdd2474462b4d3d09c435911e5d3027cc541985aa (diff)
downloadprofani-tty-1a87d7be3e2265734edee9909501ed36ebd8dd42.tar.gz
Only use enc_char in win_print_incoming() when needed
Fixes potential memory leak too.
Diffstat (limited to 'src')
-rw-r--r--src/ui/window.c5
1 files changed, 4 insertions, 1 deletions
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) {