summaryrefslogtreecommitdiffstats
path: root/lib/rubygems/commands/mirror_command.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-20 08:39:12 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-12-20 08:39:12 +0000
commitdcf06bd39ea72acbc312758e2df764c4b982b40c (patch)
treef6d367888b42848fd6a660fad57fa2020e38c097 /lib/rubygems/commands/mirror_command.rb
parenteb954f44e53ba18225a0e906891c47373ce0d651 (diff)
downloadruby-dcf06bd39ea72acbc312758e2df764c4b982b40c.tar.gz
ruby-dcf06bd39ea72acbc312758e2df764c4b982b40c.tar.xz
ruby-dcf06bd39ea72acbc312758e2df764c4b982b40c.zip
Import RubyGems 1.0.0, r1575
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@14361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rubygems/commands/mirror_command.rb')
-rw-r--r--lib/rubygems/commands/mirror_command.rb10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/rubygems/commands/mirror_command.rb b/lib/rubygems/commands/mirror_command.rb
index 74f6970e9..fc4f086ad 100644
--- a/lib/rubygems/commands/mirror_command.rb
+++ b/lib/rubygems/commands/mirror_command.rb
@@ -60,10 +60,16 @@ Multiple sources and destinations may be specified.
if get_from.scheme.nil? then
get_from = get_from.to_s
elsif get_from.scheme == 'file' then
- get_from = get_from.to_s[5..-1]
+ # check if specified URI contains a drive letter (file:/D:/Temp)
+ get_from = get_from.to_s
+ get_from = if get_from =~ /^file:.*[a-z]:/i then
+ get_from[6..-1]
+ else
+ get_from[5..-1]
+ end
end
- open File.join(get_from, "Marshal.#{Gem.marshal_version}.Z"), "rb" do |y|
+ open File.join(get_from.to_s, "Marshal.#{Gem.marshal_version}.Z"), "rb" do |y|
sourceindex_data = Zlib::Inflate.inflate y.read
open File.join(save_to, "Marshal.#{Gem.marshal_version}"), "wb" do |out|
out.write sourceindex_data