From b445434992254b2f531fe7385b7d05c7353b66ad Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Tue, 25 Feb 2020 13:04:04 -0500 Subject: Fix invalid array access on short strings --- src/str.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/str.c') diff --git a/src/str.c b/src/str.c index dbf0c42..605bbee 100644 --- a/src/str.c +++ b/src/str.c @@ -453,12 +453,18 @@ char *lstrip(char *sptr) { * @return truncated string */ char *strip(char *sptr) { - size_t len = strlen(sptr) - 1; - if (len < 1 && isblank(*sptr)) { + size_t len = strlen(sptr); + if (len == 0) { + return sptr; + } + else if (len == 1) { *sptr = '\0'; return sptr; } - for (size_t i = len; ; i--) { + for (size_t i = len; i != 0; --i) { + if (sptr[i] == '\0') { + continue; + } if (isspace(sptr[i]) || isblank(sptr[i])) { sptr[i] = '\0'; } -- cgit