From c1633c6befb6762e1ac9434a29980e4df5ffee21 Mon Sep 17 00:00:00 2001 From: John Keeping Date: Sat, 2 Mar 2013 12:32:11 +0000 Subject: Update git to v1.7.6.5 struct pathspec is now used in more places. Signed-off-by: John Keeping --- ui-plain.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'ui-plain.c') diff --git a/ui-plain.c b/ui-plain.c index 85877d7..c21d38f 100644 --- a/ui-plain.c +++ b/ui-plain.c @@ -197,7 +197,14 @@ void cgit_print_plain(struct cgit_context *ctx) const char *rev = ctx->qry.sha1; unsigned char sha1[20]; struct commit *commit; - const char *paths[] = {ctx->qry.path, NULL}; + struct pathspec_item path_items = { + .match = ctx->qry.path, + .len = ctx->qry.path ? strlen(ctx->qry.path) : 0 + }; + struct pathspec paths = { + .nr = 1, + .items = &path_items + }; if (!rev) rev = ctx->qry.head; @@ -211,14 +218,14 @@ void cgit_print_plain(struct cgit_context *ctx) html_status(404, "Not found", 0); return; } - if (!paths[0]) { - paths[0] = ""; + if (!path_items.match) { + path_items.match = ""; match_baselen = -1; print_dir(commit->tree->object.sha1, "", 0, ""); } else - match_baselen = basedir_len(paths[0]); - read_tree_recursive(commit->tree, "", 0, 0, paths, walk_tree, NULL); + match_baselen = basedir_len(path_items.match); + read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree, NULL); if (!match) html_status(404, "Not found", 0); else if (match == 2) -- cgit v1.2.3