From abbdd3bae884a4bcea20d5059f25684f9a5a7571 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Sat, 16 Apr 2022 17:47:56 +0200 Subject: [PATCH] shm: add shm_did_not_use_buffer() This allows a caller to return a buffer (obtained with shm_get_buffer()) to the pool, The buffer must not have been used. I.e. it must not have been attached and committed to a wayland surface. --- shm.c | 7 +++++++ shm.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/shm.c b/shm.c index 005d030e..4c342ddf 100644 --- a/shm.c +++ b/shm.c @@ -509,6 +509,13 @@ err: abort(); } +void +shm_did_not_use_buf(struct buffer *_buf) +{ + struct buffer_private *buf = (struct buffer_private *)_buf; + buf->busy = false; +} + void shm_get_many(struct buffer_chain *chain, size_t count, int widths[static count], int heights[static count], diff --git a/shm.h b/shm.h index 180c8525..bed4285c 100644 --- a/shm.h +++ b/shm.h @@ -66,6 +66,8 @@ void shm_get_many( int widths[static count], int heights[static count], struct buffer *bufs[static count]); +void shm_did_not_use_buf(struct buffer *buf); + bool shm_can_scroll(const struct buffer *buf); bool shm_scroll(struct buffer *buf, int rows, int top_margin, int top_keep_rows,