X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fspdifenc.c;h=84372f82da2b3d6d1f6c43da826087ea811d25e2;hb=30bcd6a945ae296ef7b36a91cc21789a05de85d9;hp=04d4845bb85a09593b3a2574bf45a8ced3f79d94;hpb=44187717c1611695ff441d22f29c7882bd318ae4;p=ffmpeg diff --git a/libavformat/spdifenc.c b/libavformat/spdifenc.c index 04d4845bb85..84372f82da2 100644 --- a/libavformat/spdifenc.c +++ b/libavformat/spdifenc.c @@ -518,13 +518,13 @@ static int spdif_write_packet(struct AVFormatContext *s, AVPacket *pkt) } if (ctx->extra_bswap ^ (ctx->spdif_flags & SPDIF_FLAG_BIGENDIAN)) { - avio_write(s->pb, ctx->out_buf, ctx->out_bytes & ~1); + avio_write(s->pb, ctx->out_buf, ctx->out_bytes & ~1); } else { - av_fast_malloc(&ctx->buffer, &ctx->buffer_size, ctx->out_bytes + FF_INPUT_BUFFER_PADDING_SIZE); - if (!ctx->buffer) - return AVERROR(ENOMEM); - ff_spdif_bswap_buf16((uint16_t *)ctx->buffer, (uint16_t *)ctx->out_buf, ctx->out_bytes >> 1); - avio_write(s->pb, ctx->buffer, ctx->out_bytes & ~1); + av_fast_malloc(&ctx->buffer, &ctx->buffer_size, ctx->out_bytes + FF_INPUT_BUFFER_PADDING_SIZE); + if (!ctx->buffer) + return AVERROR(ENOMEM); + ff_spdif_bswap_buf16((uint16_t *)ctx->buffer, (uint16_t *)ctx->out_buf, ctx->out_bytes >> 1); + avio_write(s->pb, ctx->buffer, ctx->out_bytes & ~1); } /* a final lone byte has to be MSB aligned */