diff options
author | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-12-07 00:53:01 +0000 |
---|---|---|
committer | drbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2014-12-07 00:53:01 +0000 |
commit | 97f80207d0f0d13f28a419d8c92e96bb9064096a (patch) | |
tree | de416fff9bbc978434cb4c1185099151df2ac27c /lib/rubygems/package | |
parent | a0b80a44101708b5d66cdd87f16c98277954a77c (diff) | |
download | ruby-97f80207d0f0d13f28a419d8c92e96bb9064096a.tar.gz |
* lib/rubygems: Update to RubyGems 2.4.5.
* test/rubygems: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48729 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rubygems/package')
-rw-r--r-- | lib/rubygems/package/tar_writer.rb | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/rubygems/package/tar_writer.rb b/lib/rubygems/package/tar_writer.rb index e1b38ad6b5..51a67ea51c 100644 --- a/lib/rubygems/package/tar_writer.rb +++ b/lib/rubygems/package/tar_writer.rb @@ -290,7 +290,9 @@ class Gem::Package::TarWriter # Splits +name+ into a name and prefix that can fit in the TarHeader def split_name(name) # :nodoc: - raise Gem::Package::TooLongFileName if name.bytesize > 256 + if name.bytesize > 256 + raise Gem::Package::TooLongFileName.new("File \"#{name}\" has a too long path (should be 256 or less)") + end if name.bytesize <= 100 then prefix = "" @@ -308,8 +310,12 @@ class Gem::Package::TarWriter prefix = (parts + [nxt]).join "/" name = newname - if name.bytesize > 100 or prefix.bytesize > 155 then - raise Gem::Package::TooLongFileName + if name.bytesize > 100 + raise Gem::Package::TooLongFileName.new("File \"#{prefix}/#{name}\" has a too long name (should be 100 or less)") + end + + if prefix.bytesize > 155 then + raise Gem::Package::TooLongFileName.new("File \"#{prefix}/#{name}\" has a too long base path (should be 155 or less)") end end |