Opened 10 years ago

Closed 10 years ago

#3835 closed defect (fixed)

The count of gdi objects owned by ffmpeg.exe increasing endlessly on windows

Reported by: LeiZhao Owned by:
Priority: normal Component: avdevice
Version: unspecified Keywords: win
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
using gdigrab feature on windows, and found that the count of gdi objects owned by ffmpeg.exe increasing endlessly...

cause:
code in function paint_mouse_pointer(...) of gdigrab.c

if (GetIconInfo(icon, &info)) {

CURSOR_ERROR("Could not get icon info");
goto icon_error;

}

/*Remarks from msdn

GetIconInfo creates bitmaps for the hbmMask and hbmColor members of ICONINFO.
The calling application must manage these bitmaps and delete them when they are no longer necessary.

*/

but there are NO release for these two object in code for now!

bug fix:
please add code as below in function paint_mouse_pointer(...) :
...
icon_error:

if (info.hbmMask)

DeleteObject(info.hbmMask);

if(info.hbmColor)

DeleteObject(info.hbmColor);

if (icon)

DestroyCursor(icon);

...

Change History (2)

comment:1 by Carl Eugen Hoyos, 10 years ago

Analyzed by developer: unset
Keywords: win added; gdigrab windows removed
Reproduced by developer: unset

Please send your patch as unified diff (as produced for example by git format-patch) to the ffmpeg-devel mailing list. Patch requests like this one are often ignored on this bug tracker.

comment:2 by Christophe, 10 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.