[PATCH xwayland 3/3] Check if the frame exists before reading its size

Dima Ryazanov dima at gmail.com
Fri Nov 15 02:02:23 PST 2013


This fixes crashes caused by popup windows that don't have override_redirect
(e.g., menus in VLC and KDE apps), though I don't know if this is correct.

Signed-off-by: Dima Ryazanov <dima at gmail.com>
---
 src/xwayland/window-manager.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/xwayland/window-manager.c b/src/xwayland/window-manager.c
index 6d29026..eea0349 100644
--- a/src/xwayland/window-manager.c
+++ b/src/xwayland/window-manager.c
@@ -497,7 +497,7 @@ weston_wm_window_get_frame_size(struct weston_wm_window *window,
 	if (window->fullscreen) {
 		*width = window->width;
 		*height = window->height;
-	} else if (window->decorate) {
+	} else if (window->decorate && window->frame) {
 		*width = frame_width(window->frame);
 		*height = frame_height(window->frame);
 	} else {
@@ -515,7 +515,7 @@ weston_wm_window_get_child_position(struct weston_wm_window *window,
 	if (window->fullscreen) {
 		*x = 0;
 		*y = 0;
-	} else if (window->decorate) {
+	} else if (window->decorate && window->frame) {
 		frame_interior(window->frame, x, y, NULL, NULL);
 	} else {
 		*x = t->margin;
-- 
1.8.3.2



More information about the wayland-devel mailing list