Mercurial > hg > Applications > TreeVNC
diff src/main/java/com/glavsoft/rfb/encoding/decoder/ZRLEESender.java @ 414:3af5f4af2d63
Send data size for checkDelay
author | Tatsuki IHA <e125716@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 24 Nov 2015 02:18:51 +0900 (2015-11-23) |
parents | 47c018aed50e |
children | 5c3635d6ab3c |
line wrap: on
line diff
--- a/src/main/java/com/glavsoft/rfb/encoding/decoder/ZRLEESender.java Thu Nov 19 17:18:23 2015 +0900 +++ b/src/main/java/com/glavsoft/rfb/encoding/decoder/ZRLEESender.java Tue Nov 24 02:18:51 2015 +0900 @@ -41,7 +41,11 @@ // readSend does not peform unzip, do the fullrecoding rfb.readSendData(dataLen, reader, null, rect); reader.reset(); - reader.skip(16); + if (rect.getEncodingType() == EncodingType.CHECK_DELAY) { + reader.skip(24); + } else { + reader.skip(16); + } decoder.decode(reader, renderer, rect); return; } @@ -54,9 +58,12 @@ int zrleLength = 0; if (rect.getEncodingType() == EncodingType.ZRLE || rect.getEncodingType() == EncodingType.ZRLEE - || rect.getEncodingType() == EncodingType.ZLIB) { + || rect.getEncodingType() == EncodingType.ZLIB || rect.getEncodingType() == EncodingType.CHECK_DELAY) { zrleLength = reader.readInt32(); } + if (rect.getEncodingType() == EncodingType.CHECK_DELAY) { + return zrleLength + 28; + } return zrleLength + 20; }