https://sourceforge.net/p/giflib/code/merge-requests/12/ --- a/gif2rgb.c +++ b/gif2rgb.c @@ -294,6 +294,11 @@ static void DumpScreen2RGB(char *FileNam GifRow = ScreenBuffer[i]; GifQprintf("\b\b\b\b%-4d", ScreenHeight - i); for (j = 0, BufferP = Buffer; j < ScreenWidth; j++) { + /* Check if color is within color palete */ + if (GifRow[j] >= ColorMap->ColorCount) + { + GIF_EXIT(GifErrorString(D_GIF_ERR_IMAGE_DEFECT)); + } ColorMapEntry = &ColorMap->Colors[GifRow[j]]; *BufferP++ = ColorMapEntry->Red; *BufferP++ = ColorMapEntry->Green;