summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Rodríguez <deivid.rodriguez@riseup.net>2021-11-05 13:55:09 +0100
committergit <svn-admin@ruby-lang.org>2021-12-05 05:47:45 +0900
commit9dc76e102ec00bb93b7aafaaa1309ca426d02595 (patch)
treef14ed3eeb2ea95298fcbc6c59c865ff82c85e4aa
parentec28771fde883f7d2fe04b46f06556112454f4d6 (diff)
[rubygems/rubygems] Don't write outside of destdir when installing default bundler
https://github.com/rubygems/rubygems/commit/a62d00c5e8
-rw-r--r--lib/rubygems/commands/setup_command.rb1
-rw-r--r--test/rubygems/test_gem_commands_setup_command.rb2
2 files changed, 3 insertions, 0 deletions
diff --git a/lib/rubygems/commands/setup_command.rb b/lib/rubygems/commands/setup_command.rb
index 9326496fe6..adceb62dce 100644
--- a/lib/rubygems/commands/setup_command.rb
+++ b/lib/rubygems/commands/setup_command.rb
@@ -418,6 +418,7 @@ By default, this RubyGems will install gem as:
force: options[:force],
install_as_default: true,
bin_dir: bin_dir,
+ install_dir: default_dir,
wrappers: true
).install
ensure
diff --git a/test/rubygems/test_gem_commands_setup_command.rb b/test/rubygems/test_gem_commands_setup_command.rb
index 50f99bc419..08f94d52bf 100644
--- a/test/rubygems/test_gem_commands_setup_command.rb
+++ b/test/rubygems/test_gem_commands_setup_command.rb
@@ -245,6 +245,8 @@ class TestGemCommandsSetupCommand < Gem::TestCase
def test_install_default_bundler_gem_with_destdir_flag
@cmd.extend FileUtils
+ FileUtils.chmod "-w", @gemhome
+
destdir = File.join(@tempdir, 'foo')
bin_dir = File.join(destdir, 'bin')