[PATCH] convert: fix handling of dashless UTF prefix in validate_encoding()
From: René Scharfe <hidden>
Date: 2019-10-04 19:26:00
Subsystem:
the rest · Maintainer:
Linus Torvalds
From: René Scharfe <hidden>
Date: 2019-10-04 19:26:00
Subsystem:
the rest · Maintainer:
Linus Torvalds
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 <redacted> --- convert.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/convert.c b/convert.c
index deb6f71b2d..25ac525d5f 100644
--- a/convert.c
+++ b/convert.c@@ -290,8 +290,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)
@@ -310,8 +310,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) --
2.23.0