From e08eccf53a6a95b6900daa2d89225c267a4444f1 Mon Sep 17 00:00:00 2001 From: Charlie Somerville Date: Wed, 17 Apr 2013 19:48:32 +1000 Subject: [PATCH] fix regexp in StackFrame#gem_path (#152) --- lib/better_errors/stack_frame.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/better_errors/stack_frame.rb b/lib/better_errors/stack_frame.rb index d9e14926..6c2b73e4 100644 --- a/lib/better_errors/stack_frame.rb +++ b/lib/better_errors/stack_frame.rb @@ -48,10 +48,10 @@ def gem? end def gem_path - Gem.path.each do |path| - if filename.index(path) == 0 - return filename.gsub(%r{#{path}/gems/([^/]+)-([\w.]+)/}, '\1 (\2) ') - end + if path = Gem.path.detect { |path| filename.index(path) == 0 } + gem_name_and_version, path = filename.sub("#{path}/gems/", "").split("/", 2) + /(?.+)-(?[\w.]+)/ =~ gem_name_and_version + "#{gem_name} (#{gem_version}) #{path}" end end