the repository which powers this website
ui-plain.c: only return the blob with the specified path
When a path to a directory was specified for the 'plain' view, each blob in the directory used to be returned to the client. This patch fixes the issue by matching the path of each blob against the requested path. Noticed-by: Lars Stoltenow <[email protected]> Signed-off-by: Lars Hjemli <[email protected]>
Lars Hjemli 2009-09-07
parent 011f2e9 · commit b507252
-rw-r--r--ui-plain.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ui-plain.c b/ui-plain.c
index 5addd9e6..e08b15be 100644
--- a/ui-plain.c
+++ b/ui-plain.c
@@ -46,7 +46,8 @@ static int walk_tree(const unsigned char *sha1, const char *base, int baselen,
if (S_ISDIR(mode))
return READ_TREE_RECURSIVE;
- if (S_ISREG(mode))
+ if (S_ISREG(mode) && !strncmp(base, match_path, baselen) &&
+ !strcmp(pathname, match_path + baselen))
print_object(sha1, pathname);
return 0;