This makes sure the error condition is kept in AVIOContext even if the user does not check the return value of avio_read_to_bprint or ff_read_line_to_bprint.
Signed-off-by: Marton Balint <c...@passwd.hu> --- libavformat/aviobuf.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c index 29d4bd7510..6f8a822ee3 100644 --- a/libavformat/aviobuf.c +++ b/libavformat/aviobuf.c @@ -875,8 +875,10 @@ static int64_t read_string_to_bprint_overwrite(AVIOContext *s, AVBPrint *bp, if (ret < 0) return ret; - if (!av_bprint_is_complete(bp)) + if (!av_bprint_is_complete(bp)) { + s->error = AVERROR(ENOMEM); return AVERROR(ENOMEM); + } return bp->len; } @@ -1351,8 +1353,10 @@ int avio_read_to_bprint(AVIOContext *h, AVBPrint *pb, size_t max_size) if (ret <= 0) return ret; av_bprint_append_data(pb, buf, ret); - if (!av_bprint_is_complete(pb)) + if (!av_bprint_is_complete(pb)) { + h->error = AVERROR(ENOMEM); return AVERROR(ENOMEM); + } max_size -= ret; } return 0; -- 2.31.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".