From bcf3babcaa2bf2978ac0c727ab5ba49ed6fb101e Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 8 Jan 2018 08:57:45 +0100 Subject: [PATCH 1/2] Fixed #4336: Initialize rectangle. --- libfreerdp/gdi/region.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/libfreerdp/gdi/region.c b/libfreerdp/gdi/region.c index fabb8c2e1..215f37ff8 100644 --- a/libfreerdp/gdi/region.c +++ b/libfreerdp/gdi/region.c @@ -187,20 +187,29 @@ INLINE void gdi_RgnToRect(HGDI_RGN rgn, HGDI_RECT rect) INLINE void gdi_CRgnToRect(INT64 x, INT64 y, UINT32 w, UINT32 h, HGDI_RECT rect) { + BOOL invalid = FALSE; const INT64 r = x + w - 1; const INT64 b = y + h - 1; rect->left = (x > 0) ? x : 0; rect->top = (y > 0) ? y : 0; + rect->right = rect->left; + rect->bottom = rect->top; if (r > 0) rect->right = r; else - WLog_ERR(TAG, "Invalid width"); + invalid = TRUE; if (b > 0) rect->bottom = b; else - WLog_ERR(TAG, "Invalid height"); + invalid = TRUE; + + if (invalid) + { + WLog_ERR(TAG, "Invisible rectangle %"PRId64"x%"PRId64"-%"PRId64"x%"PRId64, + x, y, r, b); + } } /** From 5140ee09b3ce61e6d920da012f7416d2594475b6 Mon Sep 17 00:00:00 2001 From: Armin Novak Date: Mon, 8 Jan 2018 13:03:06 +0100 Subject: [PATCH 2/2] Reduced log priority in gdi_CRgnToRect --- libfreerdp/gdi/region.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfreerdp/gdi/region.c b/libfreerdp/gdi/region.c index 215f37ff8..24dc2599c 100644 --- a/libfreerdp/gdi/region.c +++ b/libfreerdp/gdi/region.c @@ -207,7 +207,7 @@ INLINE void gdi_CRgnToRect(INT64 x, INT64 y, UINT32 w, UINT32 h, if (invalid) { - WLog_ERR(TAG, "Invisible rectangle %"PRId64"x%"PRId64"-%"PRId64"x%"PRId64, + WLog_DBG(TAG, "Invisible rectangle %"PRId64"x%"PRId64"-%"PRId64"x%"PRId64, x, y, r, b); } }