]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/rtmppkt.c
Merge commit '8b7a9729aa162e2bbd571933f1aa40767f1ff47b'
[ffmpeg] / libavformat / rtmppkt.c
index 0d693c27f7f8f6dd526cf7034e1e805e3f54b577..cde0da78ce144b23a74944e17080b5fca86587ec 100644 (file)
@@ -235,6 +235,14 @@ static int rtmp_packet_read_one_chunk(URLContext *h, RTMPPacket *p,
     if (hdr != RTMP_PS_TWELVEBYTES)
         timestamp += prev_pkt[channel_id].timestamp;
 
+    if (prev_pkt[channel_id].read && size != prev_pkt[channel_id].size) {
+        av_log(NULL, AV_LOG_ERROR, "RTMP packet size mismatch %d != %d\n",
+                size,
+                prev_pkt[channel_id].size);
+        ff_rtmp_packet_destroy(&prev_pkt[channel_id]);
+        prev_pkt[channel_id].read = 0;
+    }
+
     if (!prev_pkt[channel_id].read) {
         if ((ret = ff_rtmp_packet_create(p, channel_id, type, timestamp,
                                          size)) < 0)