diff options
author | Francis Rammeloo <francis.rammeloo@gmail.com> | 2010-12-13 23:15:05 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2010-12-13 23:17:56 +0000 |
commit | 6792b0fb1661fb85ccb69cc2a3233cd38bfe69c2 (patch) | |
tree | deb1245364c1e6626ef101653bcba266462fd2b9 | |
parent | aae382bcc6fe579a3df3315024016d2708423624 (diff) |
gdiscreencapsrc: fix memory leak
Structure members of ICONINFO struct filled by GetIconInfo() must
be deleted when no longer needed according to the API reference.
https://bugzilla.gnome.org/show_bug.cgi?id=611428
-rw-r--r-- | sys/winscreencap/gstgdiscreencapsrc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/winscreencap/gstgdiscreencapsrc.c b/sys/winscreencap/gstgdiscreencapsrc.c index 3ead8a9a4..ff9ea7b72 100644 --- a/sys/winscreencap/gstgdiscreencapsrc.c +++ b/sys/winscreencap/gstgdiscreencapsrc.c @@ -541,12 +541,16 @@ gst_gdiscreencapsrc_screen_capture (GstGDIScreenCapSrc * src, GstBuffer * buf) GetCursorInfo (&ci); if (ci.flags & CURSOR_SHOWING) { ICONINFO ii; + GetIconInfo (ci.hCursor, &ii); DrawIconEx (src->memDC, ci.ptScreenPos.x - src->src_rect.left - ii.xHotspot, ci.ptScreenPos.y - src->src_rect.top - ii.yHotspot, ci.hCursor, 0, 0, 0, NULL, DI_DEFAULTSIZE | DI_NORMAL | DI_COMPAT); + + DeleteObject (ii.hbmColor); + DeleteObject (ii.hbmMask); } } |