From b5946822af996103ebc58fae0f63dd8b345f5a1f Mon Sep 17 00:00:00 2001 From: KOBAYASHI Shuji Date: Sun, 10 Nov 2019 19:40:07 +0900 Subject: Defer getting `caller_dir` until needed in `MRuby::LoadGems#gem` --- lib/mruby/build/load_gems.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/mruby/build/load_gems.rb b/lib/mruby/build/load_gems.rb index 9f09167ba..f6deb5168 100644 --- a/lib/mruby/build/load_gems.rb +++ b/lib/mruby/build/load_gems.rb @@ -13,13 +13,12 @@ module MRuby end def gem(gemdir, &block) - caller_dir = File.expand_path(File.dirname(/^(.*?):\d/.match(caller.first).to_a[1])) - if gemdir.is_a?(Hash) gemdir = load_special_path_gem(gemdir) elsif GemBox.path && gemdir.is_a?(String) gemdir = File.expand_path(gemdir, File.dirname(GemBox.path)) else + caller_dir = File.expand_path(File.dirname(caller(1,1)[0][/^(.*?):\d/,1])) gemdir = File.expand_path(gemdir, caller_dir) end -- cgit v1.2.3