ffmpeg | branch: master | Paul B Mahol <one...@gmail.com> | Sun Nov 12 02:16:17 
2023 +0100| [10440a489af0dd8a6e1cd8cfdcaa81473569868a] | committer: Paul B Mahol

avcodec/gif_parser: split correctly also bitstreams that do not have extension 
blocks

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=10440a489af0dd8a6e1cd8cfdcaa81473569868a
---

 libavcodec/gif_parser.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/libavcodec/gif_parser.c b/libavcodec/gif_parser.c
index aa07585f4c..f5903585fa 100644
--- a/libavcodec/gif_parser.c
+++ b/libavcodec/gif_parser.c
@@ -67,6 +67,17 @@ static int gif_find_frame_end(GIFParseContext *g, const 
uint8_t *buf,
                 g->state = GIF_EXTENSION;
                 g->found_start = pc->frame_start_found = 1;
             } else if (buf[index] == GIF_IMAGE_SEPARATOR) {
+                if (g->state != GIF_EXTENSION_BLOCK && g->found_start &&
+                    g->found_end && g->found_sig) {
+                    next = index;
+                    g->found_start = pc->frame_start_found = 1;
+                    g->found_end = 0;
+                    g->index = 0;
+                    g->gct_flag = 0;
+                    g->gct_size = 0;
+                    g->state = GIF_IMAGE;
+                    break;
+                }
                 g->state = GIF_IMAGE;
             } else if (buf[index] == GIF_TRAILER) {
                 g->state = 0;

_______________________________________________
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to