render/allocator/gbm: insert buffer after export gbm bo

Signed-off-by: xurui <xurui@kylinos.cn>
This commit is contained in:
xurui 2025-08-25 13:58:03 +08:00
parent 7431d840d0
commit b0c886ec77

View file

@ -97,7 +97,6 @@ static struct wlr_gbm_buffer *create_buffer(struct wlr_gbm_allocator *alloc,
}
wlr_buffer_init(&buffer->base, &buffer_impl, width, height);
buffer->gbm_bo = bo;
wl_list_insert(&alloc->buffers, &buffer->link);
if (!export_gbm_bo(bo, &buffer->dmabuf)) {
free(buffer);
@ -112,6 +111,8 @@ static struct wlr_gbm_buffer *create_buffer(struct wlr_gbm_allocator *alloc,
buffer->dmabuf.modifier = fallback_modifier;
}
wl_list_insert(&alloc->buffers, &buffer->link);
char *format_name = drmGetFormatName(buffer->dmabuf.format);
char *modifier_name = drmGetFormatModifierName(buffer->dmabuf.modifier);
wlr_log(WLR_DEBUG, "Allocated %dx%d GBM buffer "