diff --git a/Library/Homebrew/extend/pathname.rb b/Library/Homebrew/extend/pathname.rb index 7453f647ba4f9441a4162f2c3efa07a8e5d3842f..dbed1cf22b262f0fe9a8adfab99526f77938e04d 100644 --- a/Library/Homebrew/extend/pathname.rb +++ b/Library/Homebrew/extend/pathname.rb @@ -179,18 +179,15 @@ class Pathname # Get enough of the file to detect common file types # POSIX tar magic has a 257 byte offset - magic_bytes = nil - File.open(self) { |f| magic_bytes = f.read(262) } - # magic numbers stolen from /usr/share/file/magic/ - case magic_bytes - when /^PK\003\004/ then :zip - when /^\037\213/ then :gzip - when /^BZh/ then :bzip2 - when /^\037\235/ then :compress - when /^.{257}ustar/ then :tar - when /^\xFD7zXZ\x00/ then :xz - when /^Rar!/ then :rar + case open { |f| f.read(262) } + when /^PK\003\004/n then :zip + when /^\037\213/n then :gzip + when /^BZh/n then :bzip2 + when /^\037\235/n then :compress + when /^.{257}ustar/n then :tar + when /^\xFD7zXZ\x00/n then :xz + when /^Rar!/n then :rar else # This code so that bad-tarballs and zips produce good error messages # when they don't unarchive properly.