From 1a6025b7a515a23ab4c83f4a5da468e00e4f0a38 Mon Sep 17 00:00:00 2001 From: Lars Hjemli Date: Mon, 1 Oct 2007 11:46:38 +0200 Subject: [PATCH] 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 --- cgit.c | 2 +- cgit.h | 2 +- ui-diff.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/cgit.c b/cgit.c index c86d290..1b85b15 100644 --- a/cgit.c +++ b/cgit.c @@ -107,7 +107,7 @@ static void cgit_print_repo_page(struct cacheitem *item) cgit_print_tag(cgit_query_sha1); break; case CMD_DIFF: - cgit_print_diff(cgit_query_sha1, cgit_query_sha2); + cgit_print_diff(cgit_query_sha1, cgit_query_sha2, cgit_query_path); break; default: cgit_print_error("Invalid request"); diff --git a/cgit.h b/cgit.h index 5ef0bc5..e96311f 100644 --- a/cgit.h +++ b/cgit.h @@ -238,7 +238,7 @@ extern void cgit_print_blob(struct cacheitem *item, const char *hex, char *path) extern void cgit_print_tree(const char *rev, char *path); extern void cgit_print_commit(char *hex); extern void cgit_print_tag(char *revname); -extern void cgit_print_diff(const char *new_hex, const char *old_hex); +extern void cgit_print_diff(const char *new_hex, const char *old_hex, const char *prefix); extern void cgit_print_snapshot(struct cacheitem *item, const char *head, const char *hex, const char *prefix, const char *filename, int snapshot); diff --git a/ui-diff.c b/ui-diff.c index 11a2ff8..ba0030f 100644 --- a/ui-diff.c +++ b/ui-diff.c @@ -89,7 +89,7 @@ static void filepair_cb(struct diff_filepair *pair) cgit_print_error("Error running diff"); } -void cgit_print_diff(const char *new_rev, const char *old_rev) +void cgit_print_diff(const char *new_rev, const char *old_rev, const char *prefix) { unsigned char sha1[20], sha2[20]; enum object_type type; @@ -133,7 +133,7 @@ void cgit_print_diff(const char *new_rev, const char *old_rev) } html(""); html(""); html("
"); - cgit_diff_tree(sha2, sha1, filepair_cb, NULL); + cgit_diff_tree(sha2, sha1, filepair_cb, prefix); html("
"); }