X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fidroqdec.c;h=0c8b7278e92bb3e4bf5fefd4e8e7658dbccbfc3a;hb=bc70684e74a185d7b80c8b80bdedda659cb581b8;hp=8fd67a6818b37c0c0742bb57e3603100948b41a0;hpb=94d98330ed6c5562341315c26c1af92771a2e6de;p=ffmpeg diff --git a/libavformat/idroqdec.c b/libavformat/idroqdec.c index 8fd67a6818b..0c8b7278e92 100644 --- a/libavformat/idroqdec.c +++ b/libavformat/idroqdec.c @@ -59,7 +59,7 @@ typedef struct RoqDemuxContext { } RoqDemuxContext; -static int roq_probe(AVProbeData *p) +static int roq_probe(const AVProbeData *p) { if ((AV_RL16(&p->buf[0]) != RoQ_MAGIC_NUMBER) || (AV_RL32(&p->buf[2]) != 0xFFFFFFFF)) @@ -205,8 +205,9 @@ static int roq_read_packet(AVFormatContext *s, } /* load up the packet */ - if (av_new_packet(pkt, chunk_size + RoQ_CHUNK_PREAMBLE_SIZE)) - return AVERROR(EIO); + ret = av_new_packet(pkt, chunk_size + RoQ_CHUNK_PREAMBLE_SIZE); + if (ret < 0) + return ret; /* copy over preamble */ memcpy(pkt->data, preamble, RoQ_CHUNK_PREAMBLE_SIZE); @@ -223,8 +224,7 @@ static int roq_read_packet(AVFormatContext *s, ret = avio_read(pb, pkt->data + RoQ_CHUNK_PREAMBLE_SIZE, chunk_size); if (ret != chunk_size) { - av_packet_unref(pkt); - ret = AVERROR(EIO); + return AVERROR(EIO); } packet_read = 1; @@ -239,7 +239,7 @@ static int roq_read_packet(AVFormatContext *s, return ret; } -AVInputFormat ff_roq_demuxer = { +const AVInputFormat ff_roq_demuxer = { .name = "roq", .long_name = NULL_IF_CONFIG_SMALL("id RoQ"), .priv_data_size = sizeof(RoqDemuxContext),