lavf/rtmpproto: Make bytes_read variables 64bit.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Sat, 14 Jan 2017 18:17:09 +0000 (19:17 +0100)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Tue, 24 Jan 2017 23:39:13 +0000 (00:39 +0100)
When bytes_read overflowed, last_bytes_read did not yet overflow
and no bytes-read report was created leading to a timeout.

Analyzed-by: Thomas Bernhard
Fixes ticket #5836.

libavformat/rtmpproto.c

index b118b4e..5d7ad79 100644 (file)
@@ -94,8 +94,8 @@ typedef struct RTMPContext {
     int           flv_nb_packets;             ///< number of flv packets published
     RTMPPacket    out_pkt;                    ///< rtmp packet, created from flv a/v or metadata (for output)
     uint32_t      client_report_size;         ///< number of bytes after which client should report to server
-    uint32_t      bytes_read;                 ///< number of bytes read from server
-    uint32_t      last_bytes_read;            ///< number of bytes read last reported to server
+    uint64_t      bytes_read;                 ///< number of bytes read from server
+    uint64_t      last_bytes_read;            ///< number of bytes read last reported to server
     uint32_t      last_timestamp;             ///< last timestamp received in a packet
     int           skip_bytes;                 ///< number of bytes to skip from the input FLV stream in the next write call
     int           has_audio;                  ///< presence of audio data