From 355687b644f274cf73b658e075bdd9947583559c Mon Sep 17 00:00:00 2001
From: Lukas Fleischer <calcurse@cryptocrack.de>
Date: Sat, 5 Mar 2011 15:38:55 +0100
Subject: Ensure key descriptions in status bar are always null-terminated.

Key descriptions are just strncpy()'ed to key[], with KEYS_KEYLEN as
maximum character count. This leads to a non-null-terminated string if
the source pointer actually points to a string with a length of
KEYS_KEYLEN bytes. Always appending a null character fixes this.

Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
---
 src/keys.c | 1 +
 1 file changed, 1 insertion(+)

(limited to 'src')

diff --git a/src/keys.c b/src/keys.c
index d465e85..93978f4 100644
--- a/src/keys.c
+++ b/src/keys.c
@@ -472,6 +472,7 @@ keys_display_bindings_bar (WINDOW *win, struct binding **binding, int first_key,
         {
           (void)strncpy (key, keys_action_firstkey (binding[i + 1]->action),
                          KEYS_KEYLEN);
+          key[KEYS_KEYLEN] = 0;
           fmtkey = keys_format_label (key, KEYS_KEYLEN);
           mvwprintw (win, 1, KEY_POS, fmtkey);
         }
-- 
cgit v1.2.3-70-g09d2