mirror of
https://github.com/morgan9e/FreeRDP
synced 2026-04-15 00:44:19 +09:00
Fixed BadValue with XCreateWindow
xf_FixWindowCoordinates occasionally set the dimensions of the window to invalid values (0) because the minimum value check was done at the beginning of the method rather than at the end
This commit is contained in:
@@ -594,16 +594,6 @@ void xf_FixWindowCoordinates(xfContext* xfc, int* x, int* y, int* width,
|
||||
vscreen_width = xfc->vscreen.area.right - xfc->vscreen.area.left + 1;
|
||||
vscreen_height = xfc->vscreen.area.bottom - xfc->vscreen.area.top + 1;
|
||||
|
||||
if (*width < 1)
|
||||
{
|
||||
*width = 1;
|
||||
}
|
||||
|
||||
if (*height < 1)
|
||||
{
|
||||
*height = 1;
|
||||
}
|
||||
|
||||
if (*x < xfc->vscreen.area.left)
|
||||
{
|
||||
*width += *x;
|
||||
@@ -625,6 +615,16 @@ void xf_FixWindowCoordinates(xfContext* xfc, int* x, int* y, int* width,
|
||||
{
|
||||
*height = vscreen_height;
|
||||
}
|
||||
|
||||
if (*width < 1)
|
||||
{
|
||||
*width = 1;
|
||||
}
|
||||
|
||||
if (*height < 1)
|
||||
{
|
||||
*height = 1;
|
||||
}
|
||||
}
|
||||
|
||||
int xf_AppWindowInit(xfContext* xfc, xfAppWindow* appWindow)
|
||||
|
||||
Reference in New Issue
Block a user