diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2015-02-25 00:40:58 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2015-02-25 00:42:14 +0100 |
commit | 7d9b06eb179fb0d032c530d21182dce3fe0a7671 (patch) | |
tree | 7be8a4aaa2ed84b83b868f4f636c3a27dfe7b98c /libavformat/rtpdec_xiph.c | |
parent | 6e9bbaca6c6739e6524809d3e786ce1e10ad518b (diff) | |
parent | 199fb40278146c5bb162990c66ad3cd561abc780 (diff) | |
download | ffmpeg-7d9b06eb179fb0d032c530d21182dce3fe0a7671.tar.gz |
Merge commit '199fb40278146c5bb162990c66ad3cd561abc780'
* commit '199fb40278146c5bb162990c66ad3cd561abc780':
rtpdec: Use ffio_free_dyn_buf
Conflicts:
libavformat/rtpdec_latm.c
libavformat/rtpdec_svq3.c
libavformat/rtpdec_xiph.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavformat/rtpdec_xiph.c')
-rw-r--r-- | libavformat/rtpdec_xiph.c | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/libavformat/rtpdec_xiph.c b/libavformat/rtpdec_xiph.c index 535cbff549..abdbcf4a86 100644 --- a/libavformat/rtpdec_xiph.c +++ b/libavformat/rtpdec_xiph.c @@ -33,6 +33,7 @@ #include "libavutil/base64.h" #include "libavcodec/bytestream.h" +#include "avio_internal.h" #include "internal.h" #include "rtpdec.h" #include "rtpdec_formats.h" @@ -49,19 +50,9 @@ struct PayloadContext { int split_pkts; }; -static void free_fragment(PayloadContext * data) -{ - if (data->fragment) { - uint8_t* p; - avio_close_dyn_buf(data->fragment, &p); - av_free(p); - data->fragment = NULL; - } -} - static void xiph_free_context(PayloadContext * data) { - free_fragment(data); + ffio_free_dyn_buf(&data->fragment); av_freep(&data->split_buf); } @@ -168,7 +159,7 @@ static int xiph_handle_packet(AVFormatContext *ctx, PayloadContext *data, int res; // end packet has been lost somewhere, so drop buffered data - free_fragment(data); + ffio_free_dyn_buf(&data->fragment); if((res = avio_open_dyn_buf(&data->fragment)) < 0) return res; @@ -181,7 +172,7 @@ static int xiph_handle_packet(AVFormatContext *ctx, PayloadContext *data, if (data->timestamp != *timestamp) { // skip if fragmented timestamp is incorrect; // a start packet has been lost somewhere - free_fragment(data); + ffio_free_dyn_buf(&data->fragment); av_log(ctx, AV_LOG_ERROR, "RTP timestamps don't match!\n"); return AVERROR_INVALIDDATA; } |