From: René Scharfe Date: Fri, 4 Oct 2019 19:25:50 +0000 (+0200) Subject: convert: fix handling of dashless UTF prefix in validate_encoding() X-Git-Tag: v2.24.0-rc0~45^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b181676ce9e8c89a39737f098d9b9c4f774596cf;p=thirdparty%2Fgit.git convert: fix handling of dashless UTF prefix in validate_encoding() Strip "UTF" and an optional dash from the start of 'upper' without passing a NULL pointer to skip_prefix() in the second call, as it cannot handle that. Signed-off-by: René Scharfe Signed-off-by: Junio C Hamano --- diff --git a/convert.c b/convert.c index 5d0307fc10..8646ee46a3 100644 --- a/convert.c +++ b/convert.c @@ -289,8 +289,8 @@ static int validate_encoding(const char *path, const char *enc, const char *stripped = NULL; char *upper = xstrdup_toupper(enc); upper[strlen(upper)-2] = '\0'; - if (!skip_prefix(upper, "UTF-", &stripped)) - skip_prefix(stripped, "UTF", &stripped); + if (skip_prefix(upper, "UTF", &stripped)) + skip_prefix(stripped, "-", &stripped); advise(advise_msg, path, stripped); free(upper); if (die_on_error) @@ -309,8 +309,8 @@ static int validate_encoding(const char *path, const char *enc, "working-tree-encoding."); const char *stripped = NULL; char *upper = xstrdup_toupper(enc); - if (!skip_prefix(upper, "UTF-", &stripped)) - skip_prefix(stripped, "UTF", &stripped); + if (skip_prefix(upper, "UTF", &stripped)) + skip_prefix(stripped, "-", &stripped); advise(advise_msg, path, stripped, stripped); free(upper); if (die_on_error)