On Mon, Dec 09, 2024 at 04:33:33PM +0900, Junio C Hamano wrote: > Jeff King <peff@xxxxxxxx> writes: > > > I think it is this off-by-one: > > > > diff --git a/strvec.c b/strvec.c > > index 62283fcef2..d67596e571 100644 > > --- a/strvec.c > > +++ b/strvec.c > > @@ -66,7 +66,7 @@ void strvec_splice(struct strvec *array, size_t idx, size_t len, > > array->v = NULL; > > ALLOC_GROW(array->v, array->nr + (replacement_len - len) + 1, > > array->alloc); > > - array->v[array->nr + (replacement_len - len) + 1] = NULL; > > + array->v[array->nr + (replacement_len - len)] = NULL; > > } > > for (size_t i = 0; i < len; i++) > > free((char *)array->v[idx + i]); Yes, of course that's the right fix. I have just seen what has been queued. Thank you Peff for the quick response. Just in case it get lost in a junk folder, I just sent you a message without cc'ing the list.