``` diff --git a/core/src/main/java/org/jruby/ext/socket/RubyBasicSocket.java b/core/src/main/java/org/jruby/ext/socket/RubyBasicSocket.java index 4e7a1a32d1..b46fe315d7 100644 --- a/core/src/main/java/org/jruby/ext/socket/RubyBasicSocket.java +++ b/core/src/main/java/org/jruby/ext/socket/RubyBasicSocket.java @@ -442,6 +442,7 @@ public class RubyBasicSocket extends RubyIO { if (ret != 0) { throw runtime.newErrnoEINVALError(SOCKOPT.strerror(ret)); } + len.flip(); buf.flip(); ByteList bytes = new ByteList(buf.array(), 0, len.get()); ```