From 487fcb4bffe2982b70d476db9d5759dbc3a025a1 Mon Sep 17 00:00:00 2001 From: Eirikr Hinngart <151315375+Oichkatzelesfrettschen@users.noreply.github.com> Date: Sat, 17 May 2025 00:53:05 -0700 Subject: [PATCH] Handle invalid hex escapes in seq --- usr.bin/seq/seq.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/usr.bin/seq/seq.c b/usr.bin/seq/seq.c index fc5a15ccd..bb00a339b 100644 --- a/usr.bin/seq/seq.c +++ b/usr.bin/seq/seq.c @@ -350,8 +350,13 @@ unescape(char *orig) *orig = c; --cp; continue; - case 'x': /* hexidecimal number */ + case 'x': /* hexadecimal number */ cp++; /* skip 'x' */ + if (!isxdigit((unsigned char)*cp)) { + --cp; + /* keep the backslash, treat 'x' literally */ + continue; + } for (i = 0, c = 0; isxdigit((unsigned char)*cp) && i < 2; i++, cp++) {