aboutsummaryrefslogtreecommitdiff
path: root/render/shm_allocator.c
diff options
context:
space:
mode:
authorSimon Ser <contact@emersion.fr>2021-04-26 19:48:35 +0200
committerSimon Ser <contact@emersion.fr>2021-04-27 20:36:03 +0200
commit24fde77c620f7fceb62da17163ab71ea3921d373 (patch)
treebf23557f3c1a2cb3183a8bb42114e44e3f467ca7 /render/shm_allocator.c
parentccbce0f0a6cf1a058b668e19b37b0aa39d81c344 (diff)
buffer: add format param to get_data_ptr
Allow wlr_buffer_impl.get_data_ptr to return a format. This allows the Pixman renderer to not care about get_dmabuf/get_shm, and only care about get_data_ptr. This will also help with [1], because client wl_shm buffers can't implement get_shm. [1]: https://github.com/swaywm/wlroots/pull/2892 References: https://github.com/swaywm/wlroots/issues/2864
Diffstat (limited to 'render/shm_allocator.c')
-rw-r--r--render/shm_allocator.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/render/shm_allocator.c b/render/shm_allocator.c
index 3bfb62e5..8da7bea6 100644
--- a/render/shm_allocator.c
+++ b/render/shm_allocator.c
@@ -31,9 +31,10 @@ static bool buffer_get_shm(struct wlr_buffer *wlr_buffer,
}
static bool buffer_get_data_ptr(struct wlr_buffer *wlr_buffer, void **data,
- size_t *stride) {
+ uint32_t *format, size_t *stride) {
struct wlr_shm_buffer *buffer = shm_buffer_from_buffer(wlr_buffer);
*data = buffer->data;
+ *format = buffer->shm.format;
*stride = buffer->shm.stride;
return true;
}