diff --git a/lib/bundled_gems.rb b/lib/bundled_gems.rb index 01a05de095..e49d6fbdcf 100644 --- a/lib/bundled_gems.rb +++ b/lib/bundled_gems.rb @@ -49,12 +49,7 @@ module Gem::BUNDLED_GEMS # :nodoc: kernel_class.send(:alias_method, :no_warning_require, :require) kernel_class.send(:define_method, :require) do |name| if message = ::Gem::BUNDLED_GEMS.warning?(name, specs: spec_names) - uplevel = ::Gem::BUNDLED_GEMS.uplevel - if uplevel > 0 - Kernel.warn message, uplevel: uplevel - else - Kernel.warn message - end + Kernel.warn message, uplevel: ::Gem::BUNDLED_GEMS.uplevel end kernel_class.send(:no_warning_require, name) end @@ -86,11 +81,10 @@ module Gem::BUNDLED_GEMS # :nodoc: uplevel += 1 # Don't show script name when bundle exec and call ruby script directly. if cl.path.end_with?("bundle") - frame_count = 0 - break + return end end - require_found ? 1 : frame_count - 1 + require_found ? 1 : (frame_count - 1).nonzero? end def self.warning?(name, specs: nil)