From 74c7c6cd847cdf062864af1d7826785d0584731b Mon Sep 17 00:00:00 2001
From: dscho <dscho>
Date: Tue, 25 Sep 2001 22:56:14 +0000
Subject: look for align bug with odd width. Bug in vncviewer?

---
 d3des.o              | Bin 16796 -> 0 bytes
 example.c            |   9 +++++++--
 tabletranstemplate.c |   2 +-
 3 files changed, 8 insertions(+), 3 deletions(-)
 delete mode 100644 d3des.o

diff --git a/d3des.o b/d3des.o
deleted file mode 100644
index 5202cef..0000000
Binary files a/d3des.o and /dev/null differ
diff --git a/example.c b/example.c
index e149d97..57d0d37 100644
--- a/example.c
+++ b/example.c
@@ -38,12 +38,17 @@ const int maxx=641, maxy=480, bpp=4;
 void initBuffer(unsigned char* buffer)
 {
   int i,j;
-  for(i=0;i<maxx;++i)
-    for(j=0;j<maxy;++j) {
+  for(j=0;j<maxy;++j) {
+    for(i=0;i<maxx;++i) {
       buffer[(j*maxx+i)*bpp+0]=(i+j)*128/(maxx+maxy); /* red */
       buffer[(j*maxx+i)*bpp+1]=i*128/maxx; /* green */
       buffer[(j*maxx+i)*bpp+2]=j*256/maxy; /* blue */
     }
+    buffer[j*maxx*bpp+0]=0xff;
+    buffer[j*maxx*bpp+1]=0xff;
+    buffer[j*maxx*bpp+2]=0xff;
+    buffer[j*maxx*bpp+3]=0xff;
+  }
 }
 
 /* Here we create a structure so that every client has it's own pointer */
diff --git a/tabletranstemplate.c b/tabletranstemplate.c
index 0d69f19..0aafff0 100644
--- a/tabletranstemplate.c
+++ b/tabletranstemplate.c
@@ -98,7 +98,7 @@ rfbTranslateWithRGBTablesINtoOUT (char *table, rfbPixelFormat *in,
     OUT_T *blueTable = greenTable + in->greenMax + 1;
 
     while (height > 0) {
-        opLineEnd = op + width;
+        opLineEnd = &op[width];
 
         while (op < opLineEnd) {
             *(op++) = (redTable[(*ip >> in->redShift) & in->redMax] |
-- 
cgit v1.2.3

