diff --git a/tree-walk.c b/tree-walk.c
index 842cb6ad2e4086610cb4f268be14ec0cddf2ee4e..02e2aed7737207225f1b96eed774a1b75dd6d8d9 100644 (file)
--- a/tree-walk.c
+++ b/tree-walk.c
void setup_traverse_info(struct traverse_info *info, const char *base)
{
int pathlen = strlen(base);
+ static struct traverse_info dummy;
memset(info, 0, sizeof(*info));
if (pathlen && base[pathlen-1] == '/')
info->pathlen = pathlen ? pathlen + 1 : 0;
info->name.path = base;
info->name.sha1 = (void *)(base + pathlen + 1);
+ if (pathlen)
+ info->prev = &dummy;
}
char *make_traverse_path(char *path, const struct traverse_info *info, const struct name_entry *n)