X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/756e3ea6392e30bcd0a41346d4ffa42c56d715e2..bdae1d8a8d39206ac75ab86f8e9ef53b2f29432e:/parsing.c?ds=sidebyside diff --git a/parsing.c b/parsing.c index 602e3de..9b7efb3 100644 --- a/parsing.c +++ b/parsing.c @@ -56,6 +56,8 @@ char *substr(const char *head, const char *tail) { char *buf; + if (tail < head) + return xstrdup(""); buf = xmalloc(tail - head + 1); strncpy(buf, head, tail - head); buf[tail - head] = '\0'; @@ -110,7 +112,7 @@ const char *reencode(char **txt, const char *src_enc, const char *dst_enc) return *txt; /* no encoding needed if src_enc equals dst_enc */ - if(!strcasecmp(src_enc, dst_enc)) + if (!strcasecmp(src_enc, dst_enc)) return *txt; tmp = reencode_string(*txt, dst_enc, src_enc); @@ -168,7 +170,7 @@ struct commitinfo *cgit_parse_commit(struct commit *commit) } /* if no special encoding is found, assume UTF-8 */ - if(!ret->msg_encoding) + if (!ret->msg_encoding) ret->msg_encoding = xstrdup("UTF-8"); // skip unknown header fields