summaryrefslogtreecommitdiffabout
path: root/ui-blob.c
authorLars Hjemli <larsh@hatman.(none)>2008-07-21 08:10:48 (UTC)
committer Lars Hjemli <larsh@hatman.(none)>2008-07-21 08:10:48 (UTC)
commit566f92b27618f67f59cc3642e17d9cb9c12634fa (patch) (unidiff)
tree3945996da0cce9a348a803d91c87df4e303c178b /ui-blob.c
parentd2eb4fddb0fb7cd1751debcff6fe1219b9c619c8 (diff)
downloadcgit-566f92b27618f67f59cc3642e17d9cb9c12634fa.zip
cgit-566f92b27618f67f59cc3642e17d9cb9c12634fa.tar.gz
cgit-566f92b27618f67f59cc3642e17d9cb9c12634fa.tar.bz2
Adjust to new calling convention for read_tree_recursive()
In GIT-1.6.0, read_tree_recursive takes an extra void pointer for callback data. We might want to use this to avoid some global variables, but for now lets just make sure that we can still compile. Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'ui-blob.c') (more/less context) (ignore whitespace changes)
-rw-r--r--ui-blob.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/ui-blob.c b/ui-blob.c
index 73a8c1d..3cda03d 100644
--- a/ui-blob.c
+++ b/ui-blob.c
@@ -8,17 +8,18 @@
8 8
9#include "cgit.h" 9#include "cgit.h"
10#include "html.h" 10#include "html.h"
11#include "ui-shared.h" 11#include "ui-shared.h"
12 12
13static char *match_path; 13static char *match_path;
14static unsigned char *matched_sha1; 14static unsigned char *matched_sha1;
15 15
16static int walk_tree(const unsigned char *sha1, const char *base,int baselen, const char *pathname, unsigned mode, int stage) { 16static int walk_tree(const unsigned char *sha1, const char *base,int baselen,
17 const char *pathname, unsigned mode, int stage, void *cbdata) {
17 if(strncmp(base,match_path,baselen) 18 if(strncmp(base,match_path,baselen)
18 || strcmp(match_path+baselen,pathname) ) 19 || strcmp(match_path+baselen,pathname) )
19 return READ_TREE_RECURSIVE; 20 return READ_TREE_RECURSIVE;
20 memmove(matched_sha1,sha1,20); 21 memmove(matched_sha1,sha1,20);
21 return 0; 22 return 0;
22} 23}
23 24
24void cgit_print_blob(const char *hex, char *path, const char *head) 25void cgit_print_blob(const char *hex, char *path, const char *head)
@@ -44,17 +45,17 @@ void cgit_print_blob(const char *hex, char *path, const char *head)
44 } 45 }
45 46
46 type = sha1_object_info(sha1, &size); 47 type = sha1_object_info(sha1, &size);
47 48
48 if((!hex) && type == OBJ_COMMIT && path) { 49 if((!hex) && type == OBJ_COMMIT && path) {
49 commit = lookup_commit_reference(sha1); 50 commit = lookup_commit_reference(sha1);
50 match_path = path; 51 match_path = path;
51 matched_sha1 = sha1; 52 matched_sha1 = sha1;
52 read_tree_recursive(commit->tree, NULL, 0, 0, paths, walk_tree); 53 read_tree_recursive(commit->tree, NULL, 0, 0, paths, walk_tree, NULL);
53 type = sha1_object_info(sha1,&size); 54 type = sha1_object_info(sha1,&size);
54 } 55 }
55 56
56 if (type == OBJ_BAD) { 57 if (type == OBJ_BAD) {
57 cgit_print_error(fmt("Bad object name: %s", hex)); 58 cgit_print_error(fmt("Bad object name: %s", hex));
58 return; 59 return;
59 } 60 }
60 61