screen-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[screen-devel] [PATCH for screen-v4] Fix coredump on xterm and rxvt


From: Marcin Cieślak
Subject: [screen-devel] [PATCH for screen-v4] Fix coredump on xterm and rxvt
Date: Tue, 5 Nov 2019 15:32:54 +0000

From: Christoph Moench-Tegeder <address@hidden>

Here's the rub: with TERM=xterm (or rxvt, for that matter), Km
("key_mouse", "Mouse event has occured") is not set (and therefore
NULL), but InitTermcap() (termcap.c:230) happily tries to strdup() that,
which gets us that segfault.

As a band-aid, catch that NULL and don't strdup().

Signed-off-by: Marcin Cieślak <address@hidden>
---
 src/termcap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/termcap.c b/src/termcap.c
index 1d4724d..445d5fc 100644
--- a/src/termcap.c
+++ b/src/termcap.c
@@ -227,7 +227,7 @@ int he;
          (D_CKM && (InStr(D_CKM, "\033[M") || InStr(D_CKM, "\033[<"))))
         {
           D_CXT = 1;
-          kmapdef[0] = SaveStr(D_CKM);
+          kmapdef[0] = D_CKM ? SaveStr(D_CKM) : NULL;
         }
       /* "be" seems to be standard for xterms... */
       if (D_CXT)
-- 
2.23.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]