]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
pass muxer: fix the incorrect section length for EIT table, fixes #5418, issue #5062
authorJaroslav Kysela <perex@perex.cz>
Sun, 30 Dec 2018 10:16:02 +0000 (11:16 +0100)
committerJaroslav Kysela <perex@perex.cz>
Sun, 30 Dec 2018 10:16:44 +0000 (11:16 +0100)
src/muxer/muxer_pass.c

index 751046eae3478c5cd0827084b89109a11bec39b1..517d3be3588512eb7d865cb6d96885752a3896c3 100644 (file)
@@ -364,8 +364,8 @@ pass_muxer_eit_cb(mpegts_psi_table_t *mt, const uint8_t *buf, int len)
   if (sid != pm->pm_src_sid) {
     len = 14; /* no events, just keep the SI tables consistent */
     sbuf[1] &= 0xf0;
-    sbuf[1] |= (len - 3) & 0x0f;
-    sbuf[2] = (len - 3) & 0xff;
+    sbuf[1] |= ((len - 3 + 4) >> 8) & 0x0f;
+    sbuf[2] = (len - 3 + 4) & 0xff;
   }
 
   len = dvb_table_append_crc32(sbuf, len, len + 4);