summaryrefslogtreecommitdiff
path: root/lib/rubygems/package/tar_reader
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rubygems/package/tar_reader')
-rw-r--r--lib/rubygems/package/tar_reader/entry.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/rubygems/package/tar_reader/entry.rb b/lib/rubygems/package/tar_reader/entry.rb
index d5c624f3d5..c70248f159 100644
--- a/lib/rubygems/package/tar_reader/entry.rb
+++ b/lib/rubygems/package/tar_reader/entry.rb
@@ -73,6 +73,10 @@ class Gem::Package::TarReader::Entry
else
@header.name
end
+ rescue ArgumentError => e
+ raise unless e.message == 'string contains null byte'
+ raise Gem::Package::TarInvalidError,
+ 'tar is corrupt, name contains null byte'
end
##