From: jeanlf Date: Tue, 8 Feb 2022 15:10:15 +0000 (+0100) Subject: [PATCH] fixed #2108 X-Git-Tag: archive/raspbian/1.0.1+dfsg1-4+rpi1+deb11u3^2~35 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=816090784d09a955d2d9327266668cd510c1afdf;p=gpac.git [PATCH] fixed #2108 Gbp-Pq: Name CVE-2022-27145.patch --- diff --git a/src/isomedia/isom_read.c b/src/isomedia/isom_read.c index b309054..1b2cde5 100644 --- a/src/isomedia/isom_read.c +++ b/src/isomedia/isom_read.c @@ -2227,8 +2227,13 @@ GF_Err gf_isom_get_sample_for_movie_time(GF_ISOFile *the_file, u32 trackNumber, return e; #endif - if (nextMediaTime && (nextMediaTime-1 != movieTime)) - return gf_isom_get_sample_for_movie_time(the_file, trackNumber, nextMediaTime-1, StreamDescriptionIndex, SearchMode, sample, sampleNumber, data_offset); + if ((SearchMode==GF_ISOM_SEARCH_SYNC_BACKWARD) || (SearchMode==GF_ISOM_SEARCH_BACKWARD)) { + if (nextMediaTime && (nextMediaTime-1 < movieTime)) + return gf_isom_get_sample_for_movie_time(the_file, trackNumber, nextMediaTime-1, StreamDescriptionIndex, SearchMode, sample, sampleNumber, data_offset); + } else { + if (nextMediaTime && (nextMediaTime-1 > movieTime)) + return gf_isom_get_sample_for_movie_time(the_file, trackNumber, nextMediaTime-1, StreamDescriptionIndex, SearchMode, sample, sampleNumber, data_offset); + } } return e; }