Fixed game crash, regression of #26977

Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
This commit is contained in:
Andrea Catania 2019-05-01 09:49:10 +02:00
parent ae41e35191
commit 2684e81682

View file

@ -1190,9 +1190,12 @@ void OS_X11::set_window_position(const Point2 &p_position) {
unsigned long remaining; unsigned long remaining;
unsigned char *data = NULL; unsigned char *data = NULL;
if (XGetWindowProperty(x11_display, x11_window, prop, 0, 4, False, AnyPropertyType, &type, &format, &len, &remaining, &data) == Success) { if (XGetWindowProperty(x11_display, x11_window, prop, 0, 4, False, AnyPropertyType, &type, &format, &len, &remaining, &data) == Success) {
long *extents = (long *)data; if (format == 32 && len == 4) {
x = extents[0]; long *extents = (long *)data;
y = extents[2]; x = extents[0];
y = extents[2];
}
XFree(data);
} }
} }
XMoveWindow(x11_display, x11_window, p_position.x - x, p_position.y - y); XMoveWindow(x11_display, x11_window, p_position.x - x, p_position.y - y);
@ -1218,9 +1221,12 @@ Size2 OS_X11::get_real_window_size() const {
unsigned long remaining; unsigned long remaining;
unsigned char *data = NULL; unsigned char *data = NULL;
if (XGetWindowProperty(x11_display, x11_window, prop, 0, 4, False, AnyPropertyType, &type, &format, &len, &remaining, &data) == Success) { if (XGetWindowProperty(x11_display, x11_window, prop, 0, 4, False, AnyPropertyType, &type, &format, &len, &remaining, &data) == Success) {
long *extents = (long *)data; if (format == 32 && len == 4) {
w += extents[0] + extents[1]; // left, right long *extents = (long *)data;
h += extents[2] + extents[3]; // top, bottom w += extents[0] + extents[1]; // left, right
h += extents[2] + extents[3]; // top, bottom
}
XFree(data);
} }
return Size2(w, h); return Size2(w, h);
} }