summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--compositor/compositor.c7
-rw-r--r--compositor/compositor.h1
2 files changed, 2 insertions, 6 deletions
diff --git a/compositor/compositor.c b/compositor/compositor.c
index a295991c..6288337e 100644
--- a/compositor/compositor.c
+++ b/compositor/compositor.c
@@ -181,7 +181,6 @@ wlsc_surface_create(struct wlsc_compositor *compositor,
surface->visual = NULL;
surface->image = EGL_NO_IMAGE_KHR;
surface->saved_texture = 0;
- surface->buffer = NULL;
surface->x = x;
surface->y = y;
surface->width = width;
@@ -286,8 +285,7 @@ wlsc_buffer_attach(struct wl_buffer *buffer, struct wl_surface *surface)
surfaces_attached_to = buffer->user_data;
- if (es->buffer)
- wl_list_remove(&es->buffer_link);
+ wl_list_remove(&es->buffer_link);
wl_list_insert(surfaces_attached_to, &es->buffer_link);
} else {
es->image = ec->create_image(ec->display, NULL,
@@ -840,7 +838,6 @@ surface_attach(struct wl_client *client,
wlsc_buffer_attach(buffer, surface);
- es->buffer = buffer;
switch (es->map_type) {
case WLSC_SURFACE_MAP_FULLSCREEN:
es->x = (es->fullscreen_output->width - es->width) / 2;
@@ -1765,8 +1762,8 @@ shm_buffer_destroyed(struct wl_buffer *buffer)
struct wlsc_surface *es, *next;
wl_list_for_each_safe(es, next, surfaces_attached_to, buffer_link) {
- es->buffer = NULL;
wl_list_remove(&es->buffer_link);
+ wl_list_init(&es->buffer_link);
}
free(surfaces_attached_to);
diff --git a/compositor/compositor.h b/compositor/compositor.h
index 5ae02b5f..2db98a12 100644
--- a/compositor/compositor.h
+++ b/compositor/compositor.h
@@ -213,7 +213,6 @@ struct wlsc_surface {
struct wlsc_matrix matrix;
struct wlsc_matrix matrix_inv;
struct wl_visual *visual;
- struct wl_buffer *buffer;
struct wlsc_output *output;
enum wlsc_surface_map_type map_type;
struct wlsc_output *fullscreen_output;