summaryrefslogtreecommitdiffabout
authorJohan Herland <johan@herland.net>2010-10-28 15:05:39 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2010-11-09 23:22:41 (UTC)
commit52558a6d39d52e2b2968b622534b0ffa4da285cb (patch) (side-by-side diff)
tree57039f23e4bf4387ec64e6ed8b993af704e37c6c
parent53f487dd71b597b0771359f2125388af0913f25e (diff)
downloadcgit-52558a6d39d52e2b2968b622534b0ffa4da285cb.zip
cgit-52558a6d39d52e2b2968b622534b0ffa4da285cb.tar.gz
cgit-52558a6d39d52e2b2968b622534b0ffa4da285cb.tar.bz2
ui-log: Prevent crash when given empty range search
Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--ui-log.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ui-log.c b/ui-log.c
index bc0c02c..b9771fa 100644
--- a/ui-log.c
+++ b/ui-log.c
@@ -141,49 +141,49 @@ static const char *disambiguate_ref(const char *ref)
unsigned char sha1[20];
const char *longref;
longref = fmt("refs/heads/%s", ref);
if (get_sha1(longref, sha1) == 0)
return longref;
return ref;
}
void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern,
char *path, int pager)
{
struct rev_info rev;
struct commit *commit;
const char *argv[] = {NULL, NULL, NULL, NULL, NULL};
int argc = 2;
int i, columns = 3;
if (!tip)
tip = ctx.qry.head;
argv[1] = disambiguate_ref(tip);
- if (grep && pattern) {
+ if (grep && pattern && *pattern) {
if (!strcmp(grep, "grep") || !strcmp(grep, "author") ||
!strcmp(grep, "committer"))
argv[argc++] = fmt("--%s=%s", grep, pattern);
if (!strcmp(grep, "range"))
argv[1] = pattern;
}
if (path) {
argv[argc++] = "--";
argv[argc++] = path;
}
init_revisions(&rev, NULL);
rev.abbrev = DEFAULT_ABBREV;
rev.commit_format = CMIT_FMT_DEFAULT;
rev.verbose_header = 1;
rev.show_root_diff = 0;
setup_revisions(argc, argv, &rev, NULL);
load_ref_decorations(DECORATE_FULL_REFS);
rev.show_decorations = 1;
rev.grep_filter.regflags |= REG_ICASE;
compile_grep_patterns(&rev.grep_filter);
prepare_revision_walk(&rev);
if (pager)