compositor: Fold weston_buffer_post_release into weston_buffer_reference
Nothing else calls weston_buffer_post_release and the ref-counting and
sending the release event is essentially what weston_buffer_reference is
all about.
diff --git a/src/compositor.c b/src/compositor.c
index 8037195..248d3b4 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -998,7 +998,12 @@
struct wl_buffer *buffer)
{
if (ref->buffer && buffer != ref->buffer) {
- weston_buffer_post_release(ref->buffer);
+ ref->buffer->busy_count--;
+ if (ref->buffer->busy_count == 0) {
+ assert(ref->buffer->resource.client != NULL);
+ wl_resource_queue_event(&ref->buffer->resource,
+ WL_BUFFER_RELEASE);
+ }
wl_list_remove(&ref->destroy_listener.link);
}
@@ -1044,16 +1049,6 @@
}
WL_EXPORT void
-weston_buffer_post_release(struct wl_buffer *buffer)
-{
- if (--buffer->busy_count > 0)
- return;
-
- assert(buffer->resource.client != NULL);
- wl_resource_queue_event(&buffer->resource, WL_BUFFER_RELEASE);
-}
-
-WL_EXPORT void
weston_output_damage(struct weston_output *output)
{
struct weston_compositor *compositor = output->compositor;
diff --git a/src/compositor.h b/src/compositor.h
index 00d3b22..4a0c1e3 100644
--- a/src/compositor.h
+++ b/src/compositor.h
@@ -698,9 +698,6 @@
weston_surface_unmap(struct weston_surface *surface);
void
-weston_buffer_post_release(struct wl_buffer *buffer);
-
-void
weston_buffer_reference(struct weston_buffer_reference *ref,
struct wl_buffer *buffer);