diff options
author | wm4 <wm4@nowhere> | 2014-06-13 02:02:30 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-06-14 14:07:23 +0200 |
commit | 54c2a95792678c8f113dd8eaa3938d4252d01f20 (patch) | |
tree | 38e9982b5a86fdc83e499eb52cbf42ab9b1f540b /demux/demux.c | |
parent | 661633b6890346474ed38b7e23a8f0cc9ef579c7 (diff) | |
download | mpv-54c2a95792678c8f113dd8eaa3938d4252d01f20.tar.bz2 mpv-54c2a95792678c8f113dd8eaa3938d4252d01f20.tar.xz |
demux: simplify packet resizing
Actually we don't need to resize packets; we just need to make them
shorter.
Diffstat (limited to 'demux/demux.c')
-rw-r--r-- | demux/demux.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/demux/demux.c b/demux/demux.c index ce6dbe949c..b5a4cc569b 100644 --- a/demux/demux.c +++ b/demux/demux.c @@ -164,21 +164,11 @@ struct demux_packet *new_demux_packet_from(void *data, size_t len) return dp; } -void resize_demux_packet(struct demux_packet *dp, size_t len) +void demux_packet_shorten(struct demux_packet *dp, size_t len) { - if (len > 1000000000) { - fprintf(stderr, "Attempt to realloc demux packet over 1 GB!\n"); - abort(); - } - assert(dp->allocation); - dp->buffer = realloc(dp->buffer, len + FF_INPUT_BUFFER_PADDING_SIZE); - if (!dp->buffer) { - fprintf(stderr, "Memory allocation failure!\n"); - abort(); - } - memset(dp->buffer + len, 0, FF_INPUT_BUFFER_PADDING_SIZE); + assert(len <= dp->len); dp->len = len; - dp->allocation = dp->buffer; + memset(dp->buffer + dp->len, 0, FF_INPUT_BUFFER_PADDING_SIZE); } void free_demux_packet(struct demux_packet *dp) |