]> gitweb.ps.run Git - ps-cgit/blobdiff - cgit.c
Add plain patch view
[ps-cgit] / cgit.c
diff --git a/cgit.c b/cgit.c
index 7b55b7b15ec4be76c35b0d3d431c9c39b8e2af69..9ca93a7c376c7b81cca853b80351c86a89884319 100644 (file)
--- a/cgit.c
+++ b/cgit.c
@@ -68,9 +68,15 @@ static void cgit_print_repo_page(struct cacheitem *item)
        setenv("GIT_DIR", cgit_repo->path, 1);
 
        if ((cgit_cmd == CMD_SNAPSHOT) && cgit_repo->snapshots) {
-               cgit_print_snapshot(item, cgit_query_sha1,
+               cgit_print_snapshot(item, cgit_query_head, cgit_query_sha1,
                                    cgit_repobasename(cgit_repo->url),
-                                   cgit_query_name);
+                                   cgit_query_path,
+                                   cgit_repo->snapshots );
+               return;
+       }
+
+       if (cgit_cmd == CMD_PATCH) {
+               cgit_print_patch(cgit_query_sha1, item);
                return;
        }
 
@@ -93,7 +99,7 @@ static void cgit_print_repo_page(struct cacheitem *item)
        switch(cgit_cmd) {
        case CMD_LOG:
                cgit_print_log(cgit_query_sha1, cgit_query_ofs,
-                              cgit_max_commit_count, cgit_query_search,
+                              cgit_max_commit_count, cgit_query_grep, cgit_query_search,
                               cgit_query_path, 1);
                break;
        case CMD_TREE:
@@ -102,8 +108,14 @@ static void cgit_print_repo_page(struct cacheitem *item)
        case CMD_COMMIT:
                cgit_print_commit(cgit_query_sha1);
                break;
+       case CMD_REFS:
+               cgit_print_refs();
+               break;
+       case CMD_TAG:
+               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");