mirror of
https://git.videolan.org/git/ffmpeg.git
synced 2024-09-28 16:02:17 +02:00
parent
c3bd1d60af
commit
6bdae41d3e
@ -1710,6 +1710,8 @@ static int matroska_parse_tracks(AVFormatContext *s)
|
|||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
track->audio.buf = av_malloc(track->audio.frame_size *
|
track->audio.buf = av_malloc(track->audio.frame_size *
|
||||||
track->audio.sub_packet_h);
|
track->audio.sub_packet_h);
|
||||||
|
if (!track->audio.buf)
|
||||||
|
return AVERROR(ENOMEM);
|
||||||
if (codec_id == AV_CODEC_ID_RA_288) {
|
if (codec_id == AV_CODEC_ID_RA_288) {
|
||||||
st->codec->block_align = track->audio.coded_framesize;
|
st->codec->block_align = track->audio.coded_framesize;
|
||||||
track->codec_priv.size = 0;
|
track->codec_priv.size = 0;
|
||||||
@ -2270,6 +2272,10 @@ static int matroska_parse_frame(MatroskaDemuxContext *matroska,
|
|||||||
offset = 8;
|
offset = 8;
|
||||||
|
|
||||||
pkt = av_mallocz(sizeof(AVPacket));
|
pkt = av_mallocz(sizeof(AVPacket));
|
||||||
|
if (!pkt) {
|
||||||
|
av_freep(&pkt_data);
|
||||||
|
return AVERROR(ENOMEM);
|
||||||
|
}
|
||||||
/* XXX: prevent data copy... */
|
/* XXX: prevent data copy... */
|
||||||
if (av_new_packet(pkt, pkt_size + offset) < 0) {
|
if (av_new_packet(pkt, pkt_size + offset) < 0) {
|
||||||
av_free(pkt);
|
av_free(pkt);
|
||||||
|
Loading…
Reference in New Issue
Block a user