winscreencap: Don't use aggregate returns

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8229>
This commit is contained in:
Edward Hervey 2025-01-11 13:40:39 +01:00 committed by GStreamer Marge Bot
parent ca4df15d4c
commit 57196d634e
3 changed files with 7 additions and 9 deletions

View file

@ -353,7 +353,8 @@ gst_gdiscreencapsrc_get_caps (GstBaseSrc * bsrc, GstCaps * filter)
RECT rect_dst;
GstCaps *caps;
src->screen_rect = rect_dst = gst_win32_get_monitor_rect (src->monitor);
gst_win32_get_monitor_rect (src->monitor, &rect_dst);
src->screen_rect = rect_dst;
if (src->capture_w && src->capture_h &&
src->capture_x + src->capture_w < rect_dst.right - rect_dst.left &&

View file

@ -33,10 +33,9 @@ _diplay_monitor_enum (HMONITOR hMon, HDC hdc, LPRECT rect, LPARAM param)
return TRUE;
}
RECT
gst_win32_get_monitor_rect (UINT index)
void
gst_win32_get_monitor_rect (UINT index, RECT * rect)
{
RECT ret_rect;
LPRECT data;
data = (LPRECT) malloc (sizeof (RECT) * GetSystemMetrics (SM_CMONITORS));
@ -44,13 +43,11 @@ gst_win32_get_monitor_rect (UINT index)
LPRECT tmp = data;
EnumDisplayMonitors (NULL, NULL, _diplay_monitor_enum, (LPARAM) & tmp);
ret_rect = data[index];
*rect = data[index];
free (data);
} else {
ZeroMemory (&ret_rect, sizeof (RECT));
ZeroMemory (rect, sizeof (RECT));
}
return ret_rect;
}
static gboolean

View file

@ -26,7 +26,7 @@
G_BEGIN_DECLS
RECT gst_win32_get_monitor_rect (UINT index);
void gst_win32_get_monitor_rect (UINT index, RECT *rect);
G_END_DECLS