chiark / gitweb /
Tag change: Make git_for_each_ref support multiple patterns
[dgit.git] / Debian / Dgit.pm
index fb983c1a023b2e44d49048255c89dd3ea7797e4a..863d1ad4fec52651f2585a5494630626ff58a885 100644 (file)
@@ -266,7 +266,9 @@ sub git_for_each_ref ($$;$) {
     # calls $func->($objid,$objtype,$fullrefname,$reftail);
     # $reftail is RHS of ref after refs/[^/]+/
     # breaks if $pattern matches any ref `refs/blah' where blah has no `/'
-    my @cmd = (qw(git for-each-ref), $pattern);
+    # $pattern may be an array ref to mean multiple patterns
+    $pattern = [ $pattern ] unless ref $pattern;
+    my @cmd = (qw(git for-each-ref), @$pattern);
     if (defined $gitdir) {
        @cmd = ('sh','-ec','cd "$1"; shift; exec "$@"','x', $gitdir, @cmd);
     }