On Wed, Oct 23, 2013 at 7:58 PM, Antoine Pelisse <apelisse@xxxxxxxxx> wrote: >> diff --git a/entry.c b/entry.c >> index acc892f..d955af5 100644 >> --- a/entry.c >> +++ b/entry.c >> @@ -237,16 +237,18 @@ static int check_path(const char *path, int len, struct stat *st, int skiplen) >> int checkout_entry(struct cache_entry *ce, >> const struct checkout *state, char *topath) >> { >> - static char path[PATH_MAX + 1]; >> + static struct strbuf path_buf = STRBUF_INIT; >> + char *path; >> struct stat st; >> - int len = state->base_dir_len; >> + int len; >> >> if (topath) >> return write_entry(ce, topath, state, 1); >> >> - memcpy(path, state->base_dir, len); >> - strcpy(path + len, ce->name); >> - len += ce_namelen(ce); >> + strbuf_reset(&path_buf); > > I think this is not required If you mean strbuf_reset, I think it is. path_buf is still static (I don't want to remove that because it'll add a lot more strbuf_release) so we can't be sure what it contains from the second checkout_entry() call. -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html