061574b9dd
The cgit build fix with respect to git-1.7.6 is incomplete: in the file ui-tree.c ls_tree() has been patched to use pathspec when invoking read_tree_recursive(), but cgit_print_tree() has not been touched. The resulting problem can be seen when browsing the tree of a cgit repository: when you "drill down" into subfolders, parts of the parent folder's contents will appear in the listing. This patch adjusts cgit_print_tree() accordingly, which fixes the problem. OBS-URL: https://build.opensuse.org/request/show/91993 OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/cgit?expand=0&rev=9
21 lines
546 B
Diff
21 lines
546 B
Diff
--- ui-tree.c 2011-11-17 18:00:20.036822908 +0100
|
|
+++ ui-tree.c 2011-11-17 18:01:22.396236999 +0100
|
|
@@ -262,6 +262,7 @@
|
|
unsigned char sha1[20];
|
|
struct commit *commit;
|
|
const char *paths[] = {path, NULL};
|
|
+ struct pathspec pathspec;
|
|
|
|
if (!rev)
|
|
rev = ctx.qry.head;
|
|
@@ -283,6 +284,8 @@
|
|
}
|
|
|
|
match_path = path;
|
|
- read_tree_recursive(commit->tree, "", 0, 0, paths, walk_tree, NULL);
|
|
+ init_pathspec(&pathspec, paths);
|
|
+ read_tree_recursive(commit->tree, "", 0, 0, &pathspec, walk_tree, NULL);
|
|
+ free_pathspec(&pathspec);
|
|
ls_tail();
|
|
}
|