summaryrefslogtreecommitdiffabout
path: root/ui-log.c
Unidiff
Diffstat (limited to 'ui-log.c') (more/less context) (show whitespace changes)
-rw-r--r--ui-log.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/ui-log.c b/ui-log.c
index d38e40a..e7f7d6f 100644
--- a/ui-log.c
+++ b/ui-log.c
@@ -51,7 +51,7 @@ void print_commit(struct commit *commit)
51} 51}
52 52
53 53
54void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *path, int pager) 54void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern, char *path, int pager)
55{ 55{
56 struct rev_info rev; 56 struct rev_info rev;
57 struct commit *commit; 57 struct commit *commit;
@@ -62,8 +62,11 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *path, i
62 if (!tip) 62 if (!tip)
63 argv[1] = cgit_query_head; 63 argv[1] = cgit_query_head;
64 64
65 if (grep) 65 if (grep && pattern && (!strcmp(grep, "grep") ||
66 argv[argc++] = fmt("--grep=%s", grep); 66 !strcmp(grep, "author") ||
67 !strcmp(grep, "committer")))
68 argv[argc++] = fmt("--%s=%s", grep, pattern);
69
67 if (path) { 70 if (path) {
68 argv[argc++] = "--"; 71 argv[argc++] = "--";
69 argv[argc++] = path; 72 argv[argc++] = path;