From 02099a8a6b3ef3bae901bab8f19afa62bf1a6bb4 Mon Sep 17 00:00:00 2001 From: Charles Oliver Nutter Date: Mon, 9 Oct 2023 17:02:36 -0500 Subject: [PATCH] Do not use BigDecimal.new to construct Fixes jruby/jruby#7752 --- java/src/json/ext/Parser.java | 2 +- java/src/json/ext/Parser.rl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/java/src/json/ext/Parser.java b/java/src/json/ext/Parser.java index ef283932..7c50bf27 100644 --- a/java/src/json/ext/Parser.java +++ b/java/src/json/ext/Parser.java @@ -1195,7 +1195,7 @@ IRubyObject createCustomDecimal(int p, int new_p) { Ruby runtime = getRuntime(); ByteList num = absSubSequence(p, new_p); IRubyObject numString = runtime.newString(num.toString()); - return parser.decimalClass.callMethod(context, "new", numString); + return runtime.getKernel().callMethod(context, "BigDecimal", numString); } diff --git a/java/src/json/ext/Parser.rl b/java/src/json/ext/Parser.rl index f670bad1..ae01e7ad 100644 --- a/java/src/json/ext/Parser.rl +++ b/java/src/json/ext/Parser.rl @@ -567,7 +567,7 @@ public class Parser extends RubyObject { Ruby runtime = getRuntime(); ByteList num = absSubSequence(p, new_p); IRubyObject numString = runtime.newString(num.toString()); - return parser.decimalClass.callMethod(context, "new", numString); + return runtime.getKernel().callMethod(context, "BigDecimal", numString); } %%{