swfed 0.30 GIF透明色 bugfix

透明色を含まない GIF89a を replaceGIFData に渡した場合に、colortable 256個目の色が透明になる不具合を修正しました。


あと、0.29 は VERSION マクロを更新し忘れていて php -i で 0.28 と表示されるので、0.30 に更新するのをお勧めします。(混乱させてすみません)

swfed/trunk/src/swf_gif.c

/*
 * getTransparentIndex
 */
int getTransparentIndex(SavedImage Image) {
    int i;
    unsigned char transparent_index = -1; // ☆チェキ☆
    if ((Image.ExtensionBlockCount == 0) || (Image.ExtensionBlocks == NULL)) {
        return -1; // ☆ GIF97a は大丈夫 ☆
    }
    for (i = 0 ; i < Image.ExtensionBlockCount ; i++ ) {
    	if (<透明色情報が見つかったら>) {
	    transparent_index = <透明色インデックス>
	    return transparent_index;
	}
    }
    return transparent_index; // ☆ -1 でなく 255 が返ります。。 ☆
}

!||!○| ̄|_