fixing inline pod documentation for the debian package. (missing whatis entry)
[catagits/Gitalist.git] / lib / Gitalist / Git / Object / Commit.pm
index 5d3cdd3..f48e9cd 100644 (file)
@@ -23,6 +23,10 @@ class Gitalist::Git::Object::Commit
                                       ],
                          );
 
+        method _build_tree {
+            return [$self->repository->get_object($self->tree_sha1)];
+        }
+
         method sha_by_path ($path) {
             $path =~ s{/+$}();
             # FIXME should this really just take the first result?
@@ -33,7 +37,7 @@ class Gitalist::Git::Object::Commit
             #'100644 blob 0fa3f3a66fb6a137f6ec2c19351ed4d807070ffa     panic.c'
             $line =~ m/^([0-9]+) (.+) ($SHA1RE)\t/;
             my $sha1 = $3;
-            return $sha1;
+            return $self->repository->get_object($sha1);
     }
 
         method get_patch ( Maybe[NonEmptySimpleStr] $parent_hash?,
@@ -176,9 +180,9 @@ class Gitalist::Git::Object::Commit
 
       my $commit = $commitdata{$sha1};
       my $line;
-      until(($line = shift @blameout) =~ s/^\t//) {
-        $commit->{$1} = $2
-         if $line =~ /^(\S+) (.*)/;
+
+      until(@blameout == 0 || ($line = shift @blameout) =~ s/^\t//) {
+        $commit->{$1} = $2 if $line =~ /^(\S+) (.*)/;
       }
 
       unless(exists $commit->{author_dt}) {
@@ -211,7 +215,7 @@ __END__
 
 =head1 NAME
 
-Gitalist::Git::Object::Commit
+Gitalist::Git::Object::Commit - Git::Object::Commit module for Gitalist
 
 =head1 SYNOPSIS