diff options
author | Kristian Høgsberg <krh@bitplanet.net> | 2014-01-02 01:27:06 -0800 |
---|---|---|
committer | Kristian Høgsberg <krh@bitplanet.net> | 2014-01-02 01:27:38 -0800 |
commit | 2eebcd34fc954fa5b5b6ae0a753fe250da78302c (patch) | |
tree | 1921330697b31be4962f111f6fab6544ae4a78ac | |
parent | c30c8a3db5e339e077fbba24c2d8ca1991485dfc (diff) |
shell: Test for surface->width == 0 to see if input-panel was unmapped
The input-panel codes tries to see determine if a buffer has not yet
been attached (or a NULL buffer has been attached), and doesn't map
the input panel surface yet in that case. However, it test for
buffer_ref being NULL, which can happen for other reasons. The right
test is to see if surface->width is 0, which means that either a
buffer hasn't yet been attached or a NULL buffer has been attached.
https://bugs.freedesktop.org/show_bug.cgi?id=72519
-rw-r--r-- | desktop-shell/input-panel.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/desktop-shell/input-panel.c b/desktop-shell/input-panel.c index 32be44ba..8fd25b0e 100644 --- a/desktop-shell/input-panel.c +++ b/desktop-shell/input-panel.c @@ -68,7 +68,7 @@ show_input_panels(struct wl_listener *listener, void *data) wl_list_for_each_safe(ipsurf, next, &shell->input_panel.surfaces, link) { - if (!ipsurf->surface->buffer_ref.buffer) + if (ipsurf->surface->width == 0) continue; wl_list_insert(&shell->input_panel_layer.view_list, &ipsurf->view->layer_link); |