From 14d8962fd36bff5e2f1e4a4cc5350a950994e1f6 Mon Sep 17 00:00:00 2001 From: Nikita Koksharov Date: Mon, 2 Sep 2024 15:35:09 +0300 Subject: [PATCH] Fixed - User-controlled data in numeric cast --- .../java/org/redisson/client/handler/CommandDecoder.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/redisson/src/main/java/org/redisson/client/handler/CommandDecoder.java b/redisson/src/main/java/org/redisson/client/handler/CommandDecoder.java index 5f0b76f0d..a4d143edf 100644 --- a/redisson/src/main/java/org/redisson/client/handler/CommandDecoder.java +++ b/redisson/src/main/java/org/redisson/client/handler/CommandDecoder.java @@ -445,8 +445,8 @@ public class CommandDecoder extends ReplayingDecoder { } handleResult(data, parts, result, false); } else if (code == '*' || code == '>' || code == '~') { - long size = readLong(in); - List respParts = new ArrayList(Math.max((int) size, 0)); + Long size = readLong(in); + List respParts = new ArrayList(Math.max(size.intValue(), 0)); state.incLevel(); @@ -576,7 +576,7 @@ public class CommandDecoder extends ReplayingDecoder { is.skipBytes(2); } - private long readLong(ByteBuf is) { + private Long readLong(ByteBuf is) { String value = readString(is, StandardCharsets.US_ASCII); return Long.parseLong(value); }