| From 7c3bce4add77944e5b479ef5da81ae7fd71a7e95 Mon Sep 17 00:00:00 2001 |
| From: Sandro Mani <manisandro@gmail.com> |
| Date: Tue, 5 Dec 2023 16:38:48 -0700 |
| Subject: [PATCH] Fix several defects found by Coverity scan |
| |
| From: giflib-5.2.1-17.fc39.src.rpm |
| Upstream: Not submitted |
| |
| Signed-off-by: Sandro Mani <manisandro@gmail.com> |
| Signed-off-by: Adam Duskett <adam.duskett@amarulasolutions.com> |
| [Fabrice: updated for 5.2.2] |
| Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> |
| [Dario: make the patch to be applied with fuzz factor 0] |
| Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> |
| --- |
| gif2rgb.c | 8 ++++++++ |
| 1 file changed, 8 insertions(+) |
| |
| diff --git a/gif2rgb.c b/gif2rgb.c |
| index d51226d65d3d..50c43ae44ee2 100644 |
| --- a/gif2rgb.c |
| +++ b/gif2rgb.c |
| @@ -165,6 +165,8 @@ static void SaveGif(GifByteType *OutputBuffer, int Width, int Height, |
| /* Open stdout for the output file: */ |
| if ((GifFile = EGifOpenFileHandle(1, &Error)) == NULL) { |
| PrintGifError(Error); |
| + free(OutputBuffer); |
| + GifFreeMapObject(OutputColorMap); |
| exit(EXIT_FAILURE); |
| } |
| |
| @@ -173,6 +175,8 @@ static void SaveGif(GifByteType *OutputBuffer, int Width, int Height, |
| EGifPutImageDesc(GifFile, 0, 0, Width, Height, false, NULL) == |
| GIF_ERROR) { |
| PrintGifError(Error); |
| + free(OutputBuffer); |
| + GifFreeMapObject(OutputColorMap); |
| exit(EXIT_FAILURE); |
| } |
| |
| @@ -182,6 +186,8 @@ static void SaveGif(GifByteType *OutputBuffer, int Width, int Height, |
| |
| for (i = 0; i < Height; i++) { |
| if (EGifPutLine(GifFile, Ptr, Width) == GIF_ERROR) { |
| + free(OutputBuffer); |
| + GifFreeMapObject(OutputColorMap); |
| exit(EXIT_FAILURE); |
| } |
| GifQprintf("\b\b\b\b%-4d", Height - i - 1); |
| @@ -191,6 +197,8 @@ static void SaveGif(GifByteType *OutputBuffer, int Width, int Height, |
| |
| if (EGifCloseFile(GifFile, &Error) == GIF_ERROR) { |
| PrintGifError(Error); |
| + free(OutputBuffer); |
| + GifFreeMapObject(OutputColorMap); |
| exit(EXIT_FAILURE); |
| } |
| } |
| -- |
| 2.43.0 |
| |