git-svn: Don't rely on $_ after making a function call
[gitweb.git] / git-svn.perl
index 077d6b3a134fcb6c8f74f1473cbb9d36bdb7c6f9..90f3bc18b959fb38b410c69d14eda30ba084dfd9 100755 (executable)
@@ -771,19 +771,19 @@ sub cmt_metadata {
 sub working_head_info {
        my ($head, $refs) = @_;
        my ($fh, $ctx) = command_output_pipe('rev-list', $head);
-       while (<$fh>) {
-               chomp;
-               my ($url, $rev, $uuid) = cmt_metadata($_);
+       while (my $hash = <$fh>) {
+               chomp($hash);
+               my ($url, $rev, $uuid) = cmt_metadata($hash);
                if (defined $url && defined $rev) {
                        if (my $gs = Git::SVN->find_by_url($url)) {
                                my $c = $gs->rev_db_get($rev);
-                               if ($c && $c eq $_) {
+                               if ($c && $c eq $hash) {
                                        close $fh; # break the pipe
                                        return ($url, $rev, $uuid, $gs);
                                }
                        }
                }
-               unshift @$refs, $_ if $refs;
+               unshift @$refs, $hash if $refs;
        }
        command_close_pipe($fh, $ctx);
        (undef, undef, undef, undef);