From 1393e2bd249134f5d4212fe40cac12e3aa3cc363 Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Thu, 7 May 2026 14:17:51 +0900 Subject: [PATCH] Extract readBuf --- ext/java/org/jruby/ext/stringio/StringIO.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/ext/java/org/jruby/ext/stringio/StringIO.java b/ext/java/org/jruby/ext/stringio/StringIO.java index ed53fdd..acbb5db 100644 --- a/ext/java/org/jruby/ext/stringio/StringIO.java +++ b/ext/java/org/jruby/ext/stringio/StringIO.java @@ -1110,11 +1110,7 @@ private IRubyObject readCommon(ThreadContext context, int argc, IRubyObject arg0 final RubyString string; switch (argc) { case 2: - str = arg1; - if (!str.isNil()) { - str = str.convertToString(); - modifyString((RubyString) str); - } + str = readBuf(arg1); case 1: if (!arg0.isNil()) { len = RubyNumeric.fix2int(arg0); @@ -1206,11 +1202,7 @@ private RubyString preadCommon(ThreadContext context, int argc, IRubyObject arg0 switch (argc) { case 3: - str = arg2; - if (!str.isNil()) { - str = str.convertToString(); - modifyString((RubyString) str); - } + str = readBuf(arg2); case 2: len = RubyNumeric.fix2int(arg0); if (!arg0.isNil()) { @@ -1702,6 +1694,14 @@ private static IRubyObject substrString(RubyString ch, IRubyObject str, Ruby run return str; } + private static IRubyObject readBuf(IRubyObject str) { + if (!str.isNil()) { + str = str.convertToString(); + modifyString((RubyString) str); + } + return str; + } + // MRI: strio_write private long stringIOWrite(ThreadContext context, Ruby runtime, IRubyObject arg) { checkWritable();