diff options
author | Uoti Urpala <uau@glyph.nonexistent.invalid> | 2010-01-26 03:31:31 +0200 |
---|---|---|
committer | Uoti Urpala <uau@glyph.nonexistent.invalid> | 2010-01-27 14:26:48 +0200 |
commit | 49b80fe6b45dad5b04d3903987b287f957b94259 (patch) | |
tree | 7cf380b94c7750bb5d3fe60af3781d6efa3cee1c /libmpdemux/demux_mkv.c | |
parent | 298808cddc40b66dde9578ec8abb71094357c3ce (diff) | |
download | mpv-49b80fe6b45dad5b04d3903987b287f957b94259.tar.bz2 mpv-49b80fe6b45dad5b04d3903987b287f957b94259.tar.xz |
demux: take chapter/attachment name strings without 0-termination
Change the demuxer_add_attachment() and demuxer_add_chapter()
functions to take a length argument for various name strings, so those
strings do not need to be 0-terminated. This will make it easier to
directly pass demuxed data without first making a copy just to add
0-termination. Also allocate the struct demuxer data structures for
attachments and chapters with talloc.
Diffstat (limited to 'libmpdemux/demux_mkv.c')
-rw-r--r-- | libmpdemux/demux_mkv.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libmpdemux/demux_mkv.c b/libmpdemux/demux_mkv.c index 6b7ed5a7b4..2fc0661da1 100644 --- a/libmpdemux/demux_mkv.c +++ b/libmpdemux/demux_mkv.c @@ -1199,7 +1199,7 @@ static int demux_mkv_read_chapters(struct demuxer *demuxer) cur_idx + 1, selected_edition); for (i = 0; i < num_selected_chapters; i++) - demuxer_add_chapter(demuxer, selected_chapters[i].name, + demuxer_add_chapter(demuxer, selected_chapters[i].name, INT_MAX, selected_chapters[i].start, selected_chapters[i].end); struct matroska_data *m = &demuxer->matroska_data; @@ -1298,7 +1298,8 @@ static int demux_mkv_read_attachments(demuxer_t *demuxer) len -= l + il; } - demuxer_add_attachment(demuxer, name, mime, data, data_size); + demuxer_add_attachment(demuxer, name, INT_MAX, mime, + INT_MAX, data, data_size); free(data); free(mime); free(name); |