discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=7716f58b5d10ac3159488e69cd8d37cc0318da71

commit 7716f58b5d10ac3159488e69cd8d37cc0318da71
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Fri Jan 13 11:35:26 2017 -0500

    throw xdg6 errors for unconfigured buffers as spec requires
---
 src/modules/wl_desktop_shell/xdg6.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/src/modules/wl_desktop_shell/xdg6.c 
b/src/modules/wl_desktop_shell/xdg6.c
index a541cbf..f9bfd5a 100644
--- a/src/modules/wl_desktop_shell/xdg6.c
+++ b/src/modules/wl_desktop_shell/xdg6.c
@@ -857,6 +857,13 @@ _e_xdg_surface_cb_popup_get(struct wl_client *client, 
struct wl_resource *resour
         return;
      }
    if (e_object_is_del(E_OBJECT(ec))) return;
+   if (e_pixmap_usable_get(ec->pixmap))
+     {
+        wl_resource_post_error(resource,
+                               ZXDG_SURFACE_V6_ERROR_UNCONFIGURED_BUFFER,
+                               "buffer attached/committed before configure");
+        return;
+     }
    p = wl_resource_get_user_data(positioner_resource);
    if (!p)
      {
@@ -1177,6 +1184,13 @@ _e_xdg_surface_cb_toplevel_get(struct wl_client *client 
EINA_UNUSED, struct wl_r
         return;
      }
    if (e_object_is_del(E_OBJECT(ec))) return;
+   if (e_pixmap_usable_get(ec->pixmap))
+     {
+        wl_resource_post_error(resource,
+                               ZXDG_SURFACE_V6_ERROR_UNCONFIGURED_BUFFER,
+                               "buffer attached/committed before configure");
+        return;
+     }
 
    cdata = ec->comp_data;
    if (cdata->shell.surface)
@@ -1268,6 +1282,13 @@ _e_xdg_shell_cb_surface_get(struct wl_client *client, 
struct wl_resource *resour
         return;
      }
    if (e_object_is_del(E_OBJECT(ec))) return;
+   if (e_pixmap_usable_get(ec->pixmap))
+     {
+        wl_resource_post_error(surface_resource,
+                               ZXDG_SURFACE_V6_ERROR_UNCONFIGURED_BUFFER,
+                               "buffer attached/committed before configure");
+        return;
+     }
 
    ec->netwm.ping = 1;
    cdata = ec->comp_data;

-- 


Reply via email to