Fix deco colour in prerender_save to work with other pixel formats

This commit is contained in:
jacksonmj 2012-01-26 03:36:54 +08:00 committed by Simon Robertshaw
parent 35270d1e37
commit 7593f01389

View File

@ -276,11 +276,13 @@ pixel *prerender_save_OPS(void *save, int size, int *width, int *height)
//Read dcolour //Read dcolour
if(fieldDescriptor & 0x40) if(fieldDescriptor & 0x40)
{ {
unsigned char r, g, b;
if(i+3 >= partsDataLen) goto fail; if(i+3 >= partsDataLen) goto fail;
i++; //vidBuf[(fullY+y)*fullW+(fullX+x)] = (unsigned)partsData[i++]<<24; i++;//Skip alpha
vidBuf[(fullY+y)*fullW+(fullX+x)] = (unsigned)partsData[i++]<<16; r = partsData[i++];
vidBuf[(fullY+y)*fullW+(fullX+x)] |= (unsigned)partsData[i++]<<8; g = partsData[i++];
vidBuf[(fullY+y)*fullW+(fullX+x)] |= (unsigned)partsData[i++]; b = partsData[i++];
vidBuf[(fullY+y)*fullW+(fullX+x)] = PIXRGB(r, g, b);
} }
//Skip vx //Skip vx