From: Joey Hess Date: Mon, 9 Apr 2012 20:19:20 +0000 (-0400) Subject: cleanup X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4549f5d3e3ac049668bd41b7d3de214c7826f69b;p=moreutils cleanup --- diff --git a/combine b/combine index 13fc2e4..99a4de6 100755 --- a/combine +++ b/combine @@ -105,30 +105,30 @@ sub compare_or { sub compare_xor { my ($file1, $file2) = @_; - my ($lines2, $seen2) = ([], {}); + my (@lines2, %seen2); filemap $file2, sub { - push @$lines2, $_; - $seen2->{$_} = 1; + push @lines2, $_; + $seen2{$_} = 1; }; + # Print all lines in file1 that are not in file2, + # and mark lines that are in both files by setting + # their value in %seen2 to 0. filemap $file1, sub { - # Print all lines in file1 that are not in file2, - # and mark lines that are in both files by setting - # their value in %seen2 to 0. - if (exists $seen2->{$_}) { - $seen2->{$_} = 0; + if (exists $seen2{$_}) { + $seen2{$_} = 0; } else { print "$_\n"; } }; - foreach (@$lines2) { - # Print all lines that are in file2 but not in file1. - # The value of these lines in seen2 is set to 1. - print "$_\n" if $seen2->{$_}; + # Print all lines that are in file2 but not in file1. + # The value of these lines in seen2 is set to 1. + foreach (@lines2) { + print "$_\n" if $seen2{$_}; } }