Code

git-notify: Fix "global" notifications
authorHolger Weiss <holger@zedat.fu-berlin.de>
Sat, 7 Nov 2009 09:40:00 +0000 (10:40 +0100)
committerHolger Weiss <holger@zedat.fu-berlin.de>
Sat, 7 Nov 2009 09:40:00 +0000 (10:40 +0100)
If the number of commits included with a single push exceeds the maximum
specified via "-n", a single notification will be generated instead of
individual e-mails.  For listing the commits within such a notification,
git-rev-list(1)'s "--pretty" option is used.  This yields output which
the git_rev_list() subroutine didn't accept.  That's now fixed.

tools/git-notify

index 8ade7b8a31baf067f53073184944259434cf5ec9..e64754c3e1defd78657a40685d7a68b328b2a9b3 100755 (executable)
@@ -145,7 +145,10 @@ sub git_rev_list(@)
     while (<REVLIST>)
     {
         chomp;
-        die "Invalid commit: $_" if not /^[0-9a-f]{40}$/;
+        unless (grep {$_ eq "--pretty"} @args)
+        {
+            die "Invalid commit: $_" if not /^[0-9a-f]{40}$/;
+        }
         push @$revlist, $_;
     }
     close REVLIST or die $! ? "Cannot execute rev-list: $!" : "rev-list exited with status: $?";