From 41b48df1deb4d6578136a0df540e7e67e5da16a8 Mon Sep 17 00:00:00 2001 From: Thomas Segismont Date: Tue, 6 Jan 2026 20:44:23 +0100 Subject: [PATCH] IndexOutOfBoundsException when decoding Pg Point (text mode) See #1597 The calculated indexTo cannot be bigger than the buffer capacity Signed-off-by: Thomas Segismont --- .../main/java/io/vertx/pgclient/impl/codec/DataTypeCodec.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vertx-pg-client/src/main/java/io/vertx/pgclient/impl/codec/DataTypeCodec.java b/vertx-pg-client/src/main/java/io/vertx/pgclient/impl/codec/DataTypeCodec.java index 36bb383e1..02998f1f3 100644 --- a/vertx-pg-client/src/main/java/io/vertx/pgclient/impl/codec/DataTypeCodec.java +++ b/vertx-pg-client/src/main/java/io/vertx/pgclient/impl/codec/DataTypeCodec.java @@ -758,7 +758,7 @@ private static Number textDecodeNUMERIC(int index, int len, ByteBuf buff) { private static Point textDecodePOINT(int index, int len, ByteBuf buff) { // Point representation: (x,y) int idx = ++index; - int s = buff.indexOf(idx, idx + len, (byte) ','); + int s = buff.indexOf(idx, idx + len - 1, (byte) ','); int t = s - idx; double x = textDecodeFLOAT8(idx, t, buff); double y = textDecodeFLOAT8(s + 1, len - t - 3, buff);