diff options
author | Lars Hjemli <hjemli@gmail.com> | 2007-10-01 18:46:38 (JST) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2007-10-01 18:46:38 (JST) |
commit | 1a6025b7a515a23ab4c83f4a5da468e00e4f0a38 (patch) | |
tree | 897fb29bf0d48a6c472221d6a2a32188dfcf8df9 | |
parent | f527a57c8a55f5fd315e1bc1cb338f5f4a9b20ae (diff) | |
download | cgit-1a6025b7a515a23ab4c83f4a5da468e00e4f0a38.zip cgit-1a6025b7a515a23ab4c83f4a5da468e00e4f0a38.tar.gz |
Add prefix parameter to cgit_print_diff()
This allows a diff to be restricted to the path prefix specified in the url.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | cgit.c | 2 | ||||
-rw-r--r-- | cgit.h | 2 | ||||
-rw-r--r-- | ui-diff.c | 4 |
3 files changed, 4 insertions, 4 deletions
@@ -107,7 +107,7 @@ static void cgit_print_repo_page(struct cacheitem *item) | |||
107 | cgit_print_tag(cgit_query_sha1); | 107 | cgit_print_tag(cgit_query_sha1); |
108 | break; | 108 | break; |
109 | case CMD_DIFF: | 109 | case CMD_DIFF: |
110 | cgit_print_diff(cgit_query_sha1, cgit_query_sha2); | 110 | cgit_print_diff(cgit_query_sha1, cgit_query_sha2, cgit_query_path); |
111 | break; | 111 | break; |
112 | default: | 112 | default: |
113 | cgit_print_error("Invalid request"); | 113 | cgit_print_error("Invalid request"); |
@@ -238,7 +238,7 @@ extern void cgit_print_blob(struct cacheitem *item, const char *hex, char *path) | |||
238 | extern void cgit_print_tree(const char *rev, char *path); | 238 | extern void cgit_print_tree(const char *rev, char *path); |
239 | extern void cgit_print_commit(char *hex); | 239 | extern void cgit_print_commit(char *hex); |
240 | extern void cgit_print_tag(char *revname); | 240 | extern void cgit_print_tag(char *revname); |
241 | extern void cgit_print_diff(const char *new_hex, const char *old_hex); | 241 | extern void cgit_print_diff(const char *new_hex, const char *old_hex, const char *prefix); |
242 | extern void cgit_print_snapshot(struct cacheitem *item, const char *head, | 242 | extern void cgit_print_snapshot(struct cacheitem *item, const char *head, |
243 | const char *hex, const char *prefix, | 243 | const char *hex, const char *prefix, |
244 | const char *filename, int snapshot); | 244 | const char *filename, int snapshot); |
@@ -89,7 +89,7 @@ static void filepair_cb(struct diff_filepair *pair) | |||
89 | cgit_print_error("Error running diff"); | 89 | cgit_print_error("Error running diff"); |
90 | } | 90 | } |
91 | 91 | ||
92 | void cgit_print_diff(const char *new_rev, const char *old_rev) | 92 | void cgit_print_diff(const char *new_rev, const char *old_rev, const char *prefix) |
93 | { | 93 | { |
94 | unsigned char sha1[20], sha2[20]; | 94 | unsigned char sha1[20], sha2[20]; |
95 | enum object_type type; | 95 | enum object_type type; |
@@ -133,7 +133,7 @@ void cgit_print_diff(const char *new_rev, const char *old_rev) | |||
133 | } | 133 | } |
134 | html("<table class='diff'>"); | 134 | html("<table class='diff'>"); |
135 | html("<tr><td>"); | 135 | html("<tr><td>"); |
136 | cgit_diff_tree(sha2, sha1, filepair_cb, NULL); | 136 | cgit_diff_tree(sha2, sha1, filepair_cb, prefix); |
137 | html("</td></tr>"); | 137 | html("</td></tr>"); |
138 | html("</table>"); | 138 | html("</table>"); |
139 | } | 139 | } |