Opened 5 years ago

Closed 5 years ago

#3835 closed defect (fixed)

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

Reported by: hlszl 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 Changed 5 years ago by cehoyos

  • 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 Changed 5 years ago by kurosu

  • Resolution set to fixed
  • Status changed from new to closed
Note: See TracTickets for help on using tickets.