parent = ec1->comp_data->sub.data->parent;
- if (parent == ec2)
- return EINA_TRUE;
-
EINA_LIST_FOREACH(parent->comp_data->sub.list_pending, l, sibling)
{
if ((sibling != ec1) && (sibling == ec2))
if (e_object_is_del(E_OBJECT(ec)) || !ec->comp_data) return;
if (!ec->comp_data->sub.data) return;
- if (!(parent = ec->comp_data->sub.data->parent)) return;
- if (e_object_is_del(E_OBJECT(parent)) || !parent->comp_data) return;
-
/* try to get the client from the sibling resource */
if (!(ecs = wl_resource_get_user_data(sibling_resource))) return;
+ if (!ecs->comp_data->sub.data) return;
+
+ if (!(parent = ec->comp_data->sub.data->parent)) return;
+ if (e_object_is_del(E_OBJECT(parent)) || !parent->comp_data) return;
+
if (!_subsurface_sibling_check(ec, ecs))
{
wl_resource_post_error(ec->comp_data->sub.data->resource,
return;
}
- if (!ecs->comp_data->sub.data) return;
-
parent->comp_data->sub.list_pending =
eina_list_remove(parent->comp_data->sub.list_pending, ec);
if (e_object_is_del(E_OBJECT(ec)) || !ec->comp_data) return;
if (!ec->comp_data->sub.data) return;
- if (!(parent = ec->comp_data->sub.data->parent)) return;
- if (e_object_is_del(E_OBJECT(parent)) || !parent->comp_data) return;
-
/* try to get the client from the sibling resource */
if (!(ecs = wl_resource_get_user_data(sibling_resource))) return;
+ if (!ecs->comp_data->sub.data) return;
+
+ if (!(parent = ec->comp_data->sub.data->parent)) return;
+ if (e_object_is_del(E_OBJECT(parent)) || !parent->comp_data) return;
+
if (!_subsurface_sibling_check(ec, ecs))
{
wl_resource_post_error(ec->comp_data->sub.data->resource,
return;
}
- if (!ecs->comp_data->sub.data) return;
-
parent->comp_data->sub.list_pending =
eina_list_remove(parent->comp_data->sub.list_pending, ec);