summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--IkiWiki/Rcs/git.pm10
-rw-r--r--debian/changelog5
2 files changed, 11 insertions, 4 deletions
diff --git a/IkiWiki/Rcs/git.pm b/IkiWiki/Rcs/git.pm
index dc79449a4..5507874e1 100644
--- a/IkiWiki/Rcs/git.pm
+++ b/IkiWiki/Rcs/git.pm
@@ -196,10 +196,14 @@ sub _parse_diff_tree ($@) { #{{{
}
}
- debug("No 'tree' or 'parents' seen in diff-tree output")
- if !defined $ci{'tree'} || !defined $ci{'parents'};
+ debug("No 'tree' seen in diff-tree output") if !defined $ci{'tree'};
- $ci{'parent'} = @{ $ci{'parents'} }[0] if defined $ci{'parents'};
+ if (defined $ci{'parents'}) {
+ $ci{'parent'} = @{ $ci{'parents'} }[0];
+ }
+ else {
+ $ci{'parent'} = 0 x 40;
+ }
# Commit message.
while (my $line = shift @{ $dt_ref }) {
diff --git a/debian/changelog b/debian/changelog
index 7e2315b60..f57e43958 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -28,8 +28,11 @@ ikiwiki (2.12) UNRELEASED; urgency=low
It needs to be setgid if the master repo is a shared repository, so
that pushes into the working copy repository happen as the same group,
avoiding permissions problems.
+ * The first git commit legitimately has no parents. Avoid recentchanges
+ spewing uninitialised value warnings and debug messages about it.
+ Dummying up a parent of 0000000 allows gitweb to work too.
- -- Joey Hess <joeyh@debian.org> Mon, 12 Nov 2007 12:26:45 -0500
+ -- Joey Hess <joeyh@debian.org> Mon, 12 Nov 2007 12:48:55 -0500
ikiwiki (2.11) unstable; urgency=low