# HG changeset patch # User YU # Date 1411457024 -32400 # Node ID 0415badf417fd33badd8d0360f3762230dd8d9da # Parent f9e319a081117d42927d724f077ddbb4fd930a2b bug fix (ArrayIndexOutOfBoundsException) diff -r f9e319a08111 -r 0415badf417f src/main/java/com/glavsoft/rfb/encoding/decoder/ZRLEDecoder.java --- a/src/main/java/com/glavsoft/rfb/encoding/decoder/ZRLEDecoder.java Tue Sep 23 16:21:11 2014 +0900 +++ b/src/main/java/com/glavsoft/rfb/encoding/decoder/ZRLEDecoder.java Tue Sep 23 16:23:44 2014 +0900 @@ -46,14 +46,13 @@ AliceVNCMessage message = new AliceVNCMessage(); message.setRectangle(rect); - message.unzip = bytes; + message.buf = bytes.clone(); message.offset = offset; DataSegment.getLocal().put("aliceVNCMessage", message); - setColorDataOnRenderer(renderer, rect, bytes, offset); } - private void setColorDataOnRenderer(Renderer renderer, + public void setColorDataOnRenderer(Renderer renderer, FramebufferUpdateRectangle rect, byte[] bytes, int offset) throws TransportException { int maxX = rect.x + rect.width; @@ -178,15 +177,4 @@ } return paletteSize * bytesPerCPixel; } - - public void decode(AliceVNCMessage message, Renderer renderer) throws TransportException { - - FramebufferUpdateRectangle rect = new FramebufferUpdateRectangle( - message.x, message.y, message.width, message.height); - - byte[] bytes = message.unzip; - int offset = message.offset; - setColorDataOnRenderer(renderer, rect, bytes, offset); - - } }