mirror of
https://gitlab.freedesktop.org/plymouth/plymouth.git
synced 2026-05-09 07:08:01 +02:00
[drm] Don't remove drm fb's that we don't know
When we access to the kernel console's fb, we don't own it and shouldn't remove it. Spotted by Scott James Remnant.
This commit is contained in:
parent
a750b43584
commit
808e129fd1
1 changed files with 5 additions and 1 deletions
|
|
@ -59,6 +59,8 @@ struct _ply_renderer_buffer
|
|||
unsigned long width;
|
||||
unsigned long height;
|
||||
unsigned long row_stride;
|
||||
|
||||
uint32_t added_fb : 1;
|
||||
};
|
||||
|
||||
struct _ply_renderer_driver
|
||||
|
|
@ -262,6 +264,7 @@ create_buffer (ply_renderer_driver_t *driver,
|
|||
buffer = ply_renderer_buffer_new (driver,
|
||||
buffer_object, buffer_id,
|
||||
width, height, *row_stride);
|
||||
buffer->added_fb = true;
|
||||
ply_hashtable_insert (driver->buffers,
|
||||
(void *) (uintptr_t) buffer_id,
|
||||
buffer);
|
||||
|
|
@ -329,7 +332,8 @@ destroy_buffer (ply_renderer_driver_t *driver,
|
|||
|
||||
assert (buffer != NULL);
|
||||
|
||||
drmModeRmFB (driver->device_fd, buffer->id);
|
||||
if (buffer->added_fb)
|
||||
drmModeRmFB (driver->device_fd, buffer->id);
|
||||
|
||||
drm_intel_bo_unreference (buffer->object);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue