[FFmpeg-devel] [PATCH] libavformat/mpegts.c: fix to check end of each descriptor of SDT

TADANO Tokumei aimingoff at pc.nifty.jp
Sun Apr 3 13:07:51 EEST 2022


Current code incorrectly check against end of section rather than
end of descriptor.

Signed-off-by: TADANO Tokumei <aimingoff at pc.nifty.jp>
---
 libavformat/mpegts.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index da77b50669..ecffb01562 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -2718,13 +2718,13 @@ static void sdt_cb(MpegTSFilter *filter, const uint8_t *section, int section_len
 
             switch (desc_tag) {
             case 0x48:
-                service_type = get8(&p, p_end);
+                service_type = get8(&p, desc_end);
                 if (service_type < 0)
                     break;
-                provider_name = getstr8(&p, p_end);
+                provider_name = getstr8(&p, desc_end);
                 if (!provider_name)
                     break;
-                name = getstr8(&p, p_end);
+                name = getstr8(&p, desc_end);
                 if (name) {
                     AVProgram *program = av_new_program(ts->stream, sid);
                     if (program) {
-- 
2.30.2



More information about the ffmpeg-devel mailing list