Fix segfault in patch view for root commit

The code for patch view assumed the current commit would always have a parent,
which made cgit segfault when that wasn't the case.

This fixes the bug and adds a test-script for patch view which includes a test
for the inital commit.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
This commit is contained in:
Lars Hjemli
2008-03-17 23:13:16 +01:00
джерело 0537a7d1cf
коміт e01f1403b9
2 змінених файлів з 42 додано та 1 видалено

@ -88,7 +88,11 @@ void cgit_print_patch(char *hex, struct cacheitem *item)
return;
}
info = cgit_parse_commit(commit);
hashcpy(old_sha1, commit->parents->item->object.sha1);
if (commit->parents && commit->parents->item)
hashcpy(old_sha1, commit->parents->item->object.sha1);
else
hashclr(old_sha1);
patchname = fmt("%s.patch", sha1_to_hex(sha1));
cgit_print_snapshot_start("text/plain", patchname, item);