git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] utf8: use skip_iprefix() in same_utf_encoding()

From
René Scharfe <l.s.r@web.de>
Date
Nov 8, 2019, 20:25 UTC
Message-ID
<b27cc95d-8cb8-db49-c2d1-3eb591624000@web.de>

Get rid of magic numbers by using skip_iprefix() and skip_prefix() for parsing the leading "[uU][tT][fF]-?" of both strings instead of checking with istarts_with() and an explicit comparison.

Signed-off-by: René Scharfe <l.s.r@web.de>
---
 utf8.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/utf8.c b/utf8.c
index 5c8f151f75..5b39361ada 100644
--- a/utf8.c
+++ b/utf8.c
@@ -411,11 +411,10 @@ void strbuf_utf8_replace(struct strbuf *sb_src, int pos, int width,
  */
 static int same_utf_encoding(const char *src, const char *dst)
 {
-	if (istarts_with(src, "utf") && istarts_with(dst, "utf")) {
-		/* src[3] or dst[3] might be '\0' */
-		int i = (src[3] == '-' ? 4 : 3);
-		int j = (dst[3] == '-' ? 4 : 3);
-		return !strcasecmp(src+i, dst+j);
+	if (skip_iprefix(src, "utf", &src) && skip_iprefix(dst, "utf", &dst)) {
+		skip_prefix(src, "-", &src);
+		skip_prefix(dst, "-", &dst);
+		return !strcasecmp(src, dst);
 	}
 	return 0;
 }
--
2.24.0
Next: Jeff King
Message 1 of 2 in “utf8: use skip_iprefix() in same_utf_encoding()”
  1. utf8: use skip_iprefix() in same_utf_encoding()René Scharfe, Nov 8, 2019
  2. Jeff KingNov 8, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.