From 5e2cdb9c088fc4c36bbf80d1d76ab414d973f4cc Mon Sep 17 00:00:00 2001 From: Darren Shepherd Date: Fri, 29 Mar 2013 22:28:01 -0700 Subject: [PATCH] When writing a negative sign the write(char) method goes directly to the output stream and by-passes the internal RedisOutputStream buffer causing random corruption of the output. Casting the char to a byte ensures write(byte) is called which will properly buffer the output. --- src/main/java/redis/clients/util/RedisOutputStream.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/redis/clients/util/RedisOutputStream.java b/src/main/java/redis/clients/util/RedisOutputStream.java index 5708d43..5398f36 100644 --- a/src/main/java/redis/clients/util/RedisOutputStream.java +++ b/src/main/java/redis/clients/util/RedisOutputStream.java @@ -187,7 +187,7 @@ public final class RedisOutputStream extends FilterOutputStream { public void writeIntCrLf(int value) throws IOException { if (value < 0) { - write('-'); + write((byte)'-'); value = -value; }