diff options
| author | Mike Virata-Stone <mjstone@on-site.com> | 2015-11-18 17:16:19 -0800 |
|---|---|---|
| committer | Mike Virata-Stone <mjstone@on-site.com> | 2015-11-18 17:16:19 -0800 |
| commit | 4b7a940f668d1884d9266946a48ba55a80c4d513 (patch) | |
| tree | fa3e167f5a470603d2a425be137741269fbdcdbe /lib/bundler/dependency.rb | |
| parent | f787c664b4645fb44066b140b3b9afee542590c9 (diff) | |
| download | bundler-4b7a940f668d1884d9266946a48ba55a80c4d513.tar.gz | |
When loading a gem from a gemspec, restrict to the platforms defined in the gemspec
This fixes #4102
Diffstat (limited to 'lib/bundler/dependency.rb')
| -rw-r--r-- | lib/bundler/dependency.rb | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/bundler/dependency.rb b/lib/bundler/dependency.rb index 660b3355bd..f3e640b676 100644 --- a/lib/bundler/dependency.rb +++ b/lib/bundler/dependency.rb @@ -54,6 +54,15 @@ module Bundler :x64_mingw_23 => Gem::Platform::X64_MINGW }.freeze + REVERSE_PLATFORM_MAP = {}.tap do |reverse_platform_map| + PLATFORM_MAP.each do |key, value| + reverse_platform_map[value] ||= [] + reverse_platform_map[value] << key + end + + reverse_platform_map.each {|_, platforms| platforms.freeze } + end.freeze + def initialize(name, version, options = {}, &blk) type = options["type"] || :runtime super(name, version, type) |
