]> git.ipfire.org Git - thirdparty/git.git/commitdiff
range-diff: drop const to fix strstr() warnings
authorJeff King <peff@peff.net>
Thu, 2 Apr 2026 04:15:12 +0000 (00:15 -0400)
committerJunio C Hamano <gitster@pobox.com>
Thu, 2 Apr 2026 05:08:53 +0000 (22:08 -0700)
This is another case where we implicitly drop the "const" from a pointer
by feeding it to strstr() and assigning the result to a non-const
pointer. This is OK in practice, since the const pointer originally
comes from a writable source (a strbuf), but C23 libc implementations
have started to complain about it.

We do write to the output pointer, so it needs to remain non-const. We
can just switch the input pointer to also be non-const in this case.  By
itself that would run into problems with calls to skip_prefix(), but
since that function has now been taught to match in/out constness
automatically, it just works without us doing anything further.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
range-diff.c

index 2712a9a107ab068d7e7145d68e4ab5e42d753cc1..8e2dd2eb193eb948b2e1694c4c32b5587d93ea1c 100644 (file)
@@ -88,7 +88,7 @@ static int read_patches(const char *range, struct string_list *list,
        line = contents.buf;
        size = contents.len;
        for (; size > 0; size -= len, line += len) {
-               const char *p;
+               char *p;
                char *eol;
 
                eol = memchr(line, '\n', size);