Fix problem noted in feature request 3482254 where selecting Raw encoding caused the Java viewer to freeze.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4861 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/java/com/tigervnc/rfb/RawDecoder.java b/java/com/tigervnc/rfb/RawDecoder.java
index f7e5d46..6be535b 100644
--- a/java/com/tigervnc/rfb/RawDecoder.java
+++ b/java/com/tigervnc/rfb/RawDecoder.java
@@ -27,12 +27,13 @@
int y = r.tl.y;
int w = r.width();
int h = r.height();
- int[] imageBuf = reader.getImageBuf(w * h);
- int nPixels = imageBuf.length / (reader.bpp() / 8);
+ int[] imageBuf = new int[w*h];
+ int nPixels = imageBuf.length;
+ int bytesPerRow = w * (reader.bpp() / 8);
while (h > 0) {
int nRows = nPixels / w;
if (nRows > h) nRows = h;
- reader.is.readPixels(imageBuf, w * h, (reader.bpp() / 8), handler.cp.pf().bigEndian);
+ reader.getInStream().readPixels(imageBuf, nPixels, (reader.bpp() / 8), handler.cp.pf().bigEndian);
handler.imageRect(new Rect(x, y, x+w, y+nRows), imageBuf);
h -= nRows;
y += nRows;