]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
tsfix: don't use freed packet (regression), fixes #3930
authorJaroslav Kysela <perex@perex.cz>
Sat, 13 Aug 2016 06:35:17 +0000 (08:35 +0200)
committerJaroslav Kysela <perex@perex.cz>
Sat, 13 Aug 2016 06:37:36 +0000 (08:37 +0200)
src/plumbing/tsfix.c

index 7c0f19d85989e466e34a1bf476cf0d634d41e4b1..afb31e751402b8d11424fc98a50a0cbd5daebadc 100644 (file)
@@ -378,13 +378,13 @@ recover_pts(tsfix_t *tf, tfstream_t *tfs, th_pkt_t *pkt)
          if (total < 50) {
             /* return packet back to tf_ptsq */
            pktref_insert_head(&tf->tf_ptsq, pkt);
-           return; /* not arrived yet, wait */
           } else {
            tvhtrace("tsfix", "%-12s packet drop PTS %"PRId64", DTS %"PRId64,
                        streaming_component_type2txt(tfs->tfs_type),
                        pkt->pkt_pts, pkt->pkt_dts);
             pkt_ref_dec(pkt);
           }
+          return; /* not arrived yet or invalid, wait */
         }
       }
       break;