Author: Lars Hjemli <hjemli@gmail.com>
shared.c: do not modify const memory Noticed-by: zhongjj <zhongjj@lemote.com> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
shared.c | 14 +++-----------
diff --git a/shared.c b/shared.c index 7ec2e19296e2bfbc7226849163b8bdb05bb56e94..3926b4a1b9bcfe669509c76779e6d85370cb2071 100644 --- a/shared.c +++ b/shared.c @@ -100,23 +100,15 @@ char *trim_end(const char *str, char c) { int len; - char *s, *t; if (str == NULL) return NULL; - t = (char *)str; - len = strlen(t); - while(len > 0 && t[len - 1] == c) + len = strlen(str); + while(len > 0 && str[len - 1] == c) len--; - if (len == 0) return NULL; - - c = t[len]; - t[len] = '\0'; - s = xstrdup(t); - t[len] = c; - return s; + return xstrndup(str, len); } char *strlpart(char *txt, int maxlen)