summaryrefslogtreecommitdiff
path: root/storage/mroonga/vendor/groonga/lib/mrb/scripts/backtrace_entry.rb
diff options
context:
space:
mode:
Diffstat (limited to 'storage/mroonga/vendor/groonga/lib/mrb/scripts/backtrace_entry.rb')
-rw-r--r--storage/mroonga/vendor/groonga/lib/mrb/scripts/backtrace_entry.rb16
1 files changed, 12 insertions, 4 deletions
diff --git a/storage/mroonga/vendor/groonga/lib/mrb/scripts/backtrace_entry.rb b/storage/mroonga/vendor/groonga/lib/mrb/scripts/backtrace_entry.rb
index 68ea9e4b6f2..34f95e968f5 100644
--- a/storage/mroonga/vendor/groonga/lib/mrb/scripts/backtrace_entry.rb
+++ b/storage/mroonga/vendor/groonga/lib/mrb/scripts/backtrace_entry.rb
@@ -5,16 +5,24 @@ module Groonga
match_data = /:(\d+):?/.match(entry)
file = match_data.pre_match
line = match_data[1].to_i
- method = match_data.post_match.gsub(/\Ain /, "")
- new(file, line, method)
+ detail_match_data = /\A(in )?(\S+)\s*/.match(match_data.post_match)
+ if detail_match_data[1]
+ method = detail_match_data[2]
+ message = detail_match_data.post_match
+ else
+ method = ""
+ message = match_data.post_match
+ end
+ new(file, line, method, message)
end
end
- attr_reader :file, :line, :method
- def initialize(file, line, method)
+ attr_reader :file, :line, :method, :message
+ def initialize(file, line, method, message)
@file = file
@line = line
@method = method
+ @message = message
end
end
end