When I switched Piglit from GLUT to Waffle, I broke detection of X11 window resizes. When the user resized the window, Piglit called piglit_display() but neglected to update piglit_width/height.
This patch ensures that Piglit updates piglit_width/height correctly. (It's amazing that it took this long for anyone to fix it. People must rarely resize Piglit windows). CC: Jordan Justen <jordan.l.jus...@intel.com> Signed-off-by: Chad Versace <chad.vers...@linux.intel.com> --- tests/util/piglit-framework-gl/piglit_x11_framework.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/util/piglit-framework-gl/piglit_x11_framework.c b/tests/util/piglit-framework-gl/piglit_x11_framework.c index 95c46c4..8b3d3d7 100644 --- a/tests/util/piglit-framework-gl/piglit_x11_framework.c +++ b/tests/util/piglit-framework-gl/piglit_x11_framework.c @@ -72,6 +72,23 @@ piglit_x11_framework(struct piglit_gl_framework *gl_fw) } static void +get_window_size(struct piglit_x11_framework *x11_fw) +{ + unsigned width, height; + + Window wjunk; + int ijunk; + unsigned ujunk; + + XGetGeometry(x11_fw->display, x11_fw->window, + &wjunk, &ijunk, &ijunk, + &width, &height, &ujunk, &ujunk); + + piglit_width = width; + piglit_height = height; +} + +static void process_next_event(struct piglit_x11_framework *x11_fw) { struct piglit_winsys_framework *winsys_fw = &x11_fw->winsys_fw; @@ -84,9 +101,11 @@ process_next_event(struct piglit_x11_framework *x11_fw) switch (event.type) { case Expose: + get_window_size(x11_fw); winsys_fw->need_redisplay = true; break; case ConfigureNotify: + get_window_size(x11_fw); if (winsys_fw->user_reshape_func) winsys_fw->user_reshape_func(event.xconfigure.width, event.xconfigure.height); -- 1.8.3.1 _______________________________________________ Piglit mailing list Piglit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/piglit