range-diff: drop const to fix strstr() warnings

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>
This commit is contained in:
Jeff King
2026-04-02 00:15:12 -04:00
committed by Junio C Hamano
parent d3cd819e8b
commit c39512600f

View 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);