look for align bug with odd width. Bug in vncviewer?

pull/1/head
dscho 23 years ago
parent 1342b7e178
commit 74c7c6cd84

Binary file not shown.

@ -38,12 +38,17 @@ const int maxx=641, maxy=480, bpp=4;
void initBuffer(unsigned char* buffer) void initBuffer(unsigned char* buffer)
{ {
int i,j; 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+0]=(i+j)*128/(maxx+maxy); /* red */
buffer[(j*maxx+i)*bpp+1]=i*128/maxx; /* green */ buffer[(j*maxx+i)*bpp+1]=i*128/maxx; /* green */
buffer[(j*maxx+i)*bpp+2]=j*256/maxy; /* blue */ 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 */ /* Here we create a structure so that every client has it's own pointer */

@ -98,7 +98,7 @@ rfbTranslateWithRGBTablesINtoOUT (char *table, rfbPixelFormat *in,
OUT_T *blueTable = greenTable + in->greenMax + 1; OUT_T *blueTable = greenTable + in->greenMax + 1;
while (height > 0) { while (height > 0) {
opLineEnd = op + width; opLineEnd = &op[width];
while (op < opLineEnd) { while (op < opLineEnd) {
*(op++) = (redTable[(*ip >> in->redShift) & in->redMax] | *(op++) = (redTable[(*ip >> in->redShift) & in->redMax] |

Loading…
Cancel
Save