diff --git a/libavformat/mov.c b/libavformat/mov.c index b03a8f8295..414e7fa7c0 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -1018,7 +1018,9 @@ static int mov_read_adrm(MOVContext *c, AVIOContext *pb, MOVAtom atom) avio_read(pb, output, 8); // go to offset 8, absolute position 0x251 avio_read(pb, input, DRM_BLOB_SIZE); avio_read(pb, output, 4); // go to offset 4, absolute position 0x28d - avio_read(pb, file_checksum, 20); + ret = ffio_read_size(pb, file_checksum, 20); + if (ret < 0) + goto fail; av_log(c->fc, AV_LOG_INFO, "[aax] file checksum == "); // required by external tools for (i = 0; i < 20; i++)