svn commit: r515868 - in head/sysutils/screen: . files
Christoph Moench-Tegeder
cmt at FreeBSD.org
Mon Oct 28 14:42:22 UTC 2019
Author: cmt
Date: Mon Oct 28 14:42:21 2019
New Revision: 515868
URL: https://svnweb.freebsd.org/changeset/ports/515868
Log:
sysutils/screen: fix coredump on xterm/rxvt variants without Km
On xterm- and rxvt-variants (and in some other cases) screen's
InitTermcap() tries to strdup() the terminals "Km" ("key_mouse")
termcap attribute - but that might be NULL, as some of these
terminals (notably rxvt and xterm-color) do not have "Km". Trying
to strdup() NULL results in segfault and coredump.
Catch that NULL and prevent the segfault.
PR: 241538
Reported by: Marcin Cieślak, Gareth de Vaux
Approved by: cy@
Modified:
head/sysutils/screen/Makefile
head/sysutils/screen/files/patch-termcap.c
Modified: head/sysutils/screen/Makefile
==============================================================================
--- head/sysutils/screen/Makefile Mon Oct 28 14:36:56 2019 (r515867)
+++ head/sysutils/screen/Makefile Mon Oct 28 14:42:21 2019 (r515868)
@@ -3,7 +3,7 @@
PORTNAME= screen
PORTVERSION= 4.7.0
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= sysutils
MASTER_SITES= GNU \
ftp://ftp.gnu.org/gnu/screen/ \
Modified: head/sysutils/screen/files/patch-termcap.c
==============================================================================
--- head/sysutils/screen/files/patch-termcap.c Mon Oct 28 14:36:56 2019 (r515867)
+++ head/sysutils/screen/files/patch-termcap.c Mon Oct 28 14:42:21 2019 (r515868)
@@ -1,6 +1,15 @@
---- termcap.c.orig Wed Jul 5 16:33:30 2000
-+++ termcap.c Wed Oct 11 05:40:12 2000
-@@ -355,11 +355,7 @@
+--- termcap.c.orig 2019-10-01 22:08:00 UTC
++++ 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)
+@@ -362,11 +362,7 @@ int he;
if (D_CG0)
{
if (D_CS0 == 0)
More information about the svn-ports-all
mailing list