Website Summary Files Commits Branches @commit @diff @stats
diff options
context:
space:
mode:
Commitb507252b469333d06afff0888d466e39124a7e07 (patch)
Author
 Lars Hjemli <larsh@slackbox.hjemli.net>
2009-09-06 19:33:10 +0200
Committer
 Lars Hjemli <larsh@slackbox.hjemli.net>
2009-09-06 19:33:10 +0200
Files05b98ce7a9b600679fd4fad437459e25c60d194a
cgit-b507252b469333d06afff0888d466e39124a7e07.tar
cgit-b507252b469333d06afff0888d466e39124a7e07.tar.gz
cgit-b507252b469333d06afff0888d466e39124a7e07.zip
Parent011f2e9bdddcbfe65da397629bca87d167313a28 (diff)
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 <penma@penma.de> Signed-off-by: Lars Hjemli <larsh@slackbox.hjemli.net>
1 files changed, 2 insertions, 1 deletions
-rw-r--r--ui-plain.c3
diff --git a/ui-plain.c b/ui-plain.c
index 5addd9e..e08b15b 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;