compositor: change weston_surface::destroy_signal argument
Pass 'this' weston_surface as the data argument to
weston_surface::destroy_signal listeners. The old &surface->resource was
really just an offsetted pointer to the weston_surface anyway. And,
because 'resource' happened to be the first member in struct weston_surface,
it was actually 'this' weston_surface.
The argument type was accidentally changed in commit
26ed73cee8 from wl_resource* to
wl_resource**.
Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
This commit is contained in:
+3
-3
@@ -1876,7 +1876,7 @@ weston_surface_destroy(struct weston_surface *surface)
|
|||||||
|
|
||||||
assert(surface->resource == NULL);
|
assert(surface->resource == NULL);
|
||||||
|
|
||||||
wl_signal_emit(&surface->destroy_signal, &surface->resource);
|
wl_signal_emit(&surface->destroy_signal, surface);
|
||||||
|
|
||||||
assert(wl_list_empty(&surface->subsurface_list_pending));
|
assert(wl_list_empty(&surface->subsurface_list_pending));
|
||||||
assert(wl_list_empty(&surface->subsurface_list));
|
assert(wl_list_empty(&surface->subsurface_list));
|
||||||
@@ -3483,7 +3483,7 @@ subsurface_handle_surface_destroy(struct wl_listener *listener, void *data)
|
|||||||
struct weston_subsurface *sub =
|
struct weston_subsurface *sub =
|
||||||
container_of(listener, struct weston_subsurface,
|
container_of(listener, struct weston_subsurface,
|
||||||
surface_destroy_listener);
|
surface_destroy_listener);
|
||||||
assert(data == &sub->surface->resource);
|
assert(data == sub->surface);
|
||||||
|
|
||||||
/* The protocol object (wl_resource) is left inert. */
|
/* The protocol object (wl_resource) is left inert. */
|
||||||
if (sub->resource)
|
if (sub->resource)
|
||||||
@@ -3498,7 +3498,7 @@ subsurface_handle_parent_destroy(struct wl_listener *listener, void *data)
|
|||||||
struct weston_subsurface *sub =
|
struct weston_subsurface *sub =
|
||||||
container_of(listener, struct weston_subsurface,
|
container_of(listener, struct weston_subsurface,
|
||||||
parent_destroy_listener);
|
parent_destroy_listener);
|
||||||
assert(data == &sub->parent->resource);
|
assert(data == sub->parent);
|
||||||
assert(sub->surface != sub->parent);
|
assert(sub->surface != sub->parent);
|
||||||
|
|
||||||
if (weston_surface_is_mapped(sub->surface))
|
if (weston_surface_is_mapped(sub->surface))
|
||||||
|
|||||||
+1
-1
@@ -883,7 +883,7 @@ struct weston_surface_state {
|
|||||||
|
|
||||||
struct weston_surface {
|
struct weston_surface {
|
||||||
struct wl_resource *resource;
|
struct wl_resource *resource;
|
||||||
struct wl_signal destroy_signal;
|
struct wl_signal destroy_signal; /* callback argument: this surface */
|
||||||
struct weston_compositor *compositor;
|
struct weston_compositor *compositor;
|
||||||
|
|
||||||
/** Damage in local coordinates from the client, for tex upload. */
|
/** Damage in local coordinates from the client, for tex upload. */
|
||||||
|
|||||||
Reference in New Issue
Block a user