summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Michael <cp.michael@samsung.com>2013-09-24 11:33:13 +0100
committerChris Michael <cp.michael@samsung.com>2013-09-24 11:34:10 +0100
commiteeb6f1e59f7e523d196085825efe1b27cb085df8 (patch)
treeb7dd2db6949af8a59d4c0d77e8638772c27770fe
parentdeedad61b964b52e0430e41560cb0fec56d6592e (diff)
Do not call actual wl_surface_commit unless we have a buffer attached.
NB: Fixes zmike multi-client problem Signed-off-by: Chris Michael <cp.michael@samsung.com>
-rw-r--r--src/lib/ecore_wayland/ecore_wl_window.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/ecore_wayland/ecore_wl_window.c b/src/lib/ecore_wayland/ecore_wl_window.c
index 748aa76a20..cd5aabe7ad 100644
--- a/src/lib/ecore_wayland/ecore_wl_window.c
+++ b/src/lib/ecore_wayland/ecore_wl_window.c
@@ -196,7 +196,8 @@ ecore_wl_window_commit(Ecore_Wl_Window *win)
196 LOGFN(__FILE__, __LINE__, __FUNCTION__); 196 LOGFN(__FILE__, __LINE__, __FUNCTION__);
197 197
198 if (!win) return; 198 if (!win) return;
199 if (win->surface) wl_surface_commit(win->surface); 199 if ((win->surface) && (win->has_buffer))
200 wl_surface_commit(win->surface);
200} 201}
201 202
202EAPI void 203EAPI void
@@ -227,6 +228,7 @@ ecore_wl_window_buffer_attach(Ecore_Wl_Window *win, struct wl_buffer *buffer, in
227 y = 0; 228 y = 0;
228 229
229 win->edges = 0; 230 win->edges = 0;
231 win->has_buffer = (buffer != NULL);
230 232
231 /* if (buffer) */ 233 /* if (buffer) */
232 wl_surface_attach(win->surface, buffer, x, y); 234 wl_surface_attach(win->surface, buffer, x, y);