From: walle <dont.b...@gmail.com> lock screen or other permission notification in win7 or higher windows version would case BitBlt return false, and gdigrab_read_packet will return AVERROR(EIO) and do nothing to allocated packet data, then memory leak happend. It's necessary to release packet data before return from gdigrab_read_packet. --- libavdevice/gdigrab.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/libavdevice/gdigrab.c b/libavdevice/gdigrab.c index f4444406fa..b69494c98d 100644 --- a/libavdevice/gdigrab.c +++ b/libavdevice/gdigrab.c @@ -576,6 +576,7 @@ static int gdigrab_read_packet(AVFormatContext *s1, AVPacket *pkt) clip_rect.bottom - clip_rect.top, source_hdc, clip_rect.left, clip_rect.top, SRCCOPY | CAPTUREBLT)) { + av_packet_unref(pkt); WIN32_API_ERROR("Failed to capture image"); return AVERROR(EIO); } -- 2.25.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".