fixed handling of grayscale images with bpp!=8
authorkramm <kramm>
Mon, 1 Nov 2004 15:02:39 +0000 (15:02 +0000)
committerkramm <kramm>
Mon, 1 Nov 2004 15:02:39 +0000 (15:02 +0000)
src/png2swf.c

index d950bd7..b765df0 100644 (file)
@@ -635,12 +635,13 @@ TAG *MovieAddFrame(SWF * swf, TAG * t, char *sname, int id)
                }
            }
        } else {
-           palettelen = 256;
+            int mult = (0x1ff>>header.bpp);
+           palettelen = 1<<header.bpp;
            rgba = (RGBA*)malloc(palettelen*sizeof(RGBA));
-           for(i=0;i<256;i++) {
-               rgba[i].r = i;
-               rgba[i].g = i;
-               rgba[i].b = i;
+           for(i=0;i<palettelen;i++) {
+               rgba[i].r = i*mult;
+               rgba[i].g = i*mult;
+               rgba[i].b = i*mult;
            }
        }