compositor-drm: Fix invalid usage of udev ressources
The reference returned by udev_list_entry_get_name is only valid until udev_enumerate_unref is called. Call unref after the last usage of such.
This commit is contained in:
@@ -826,8 +826,6 @@ drm_compositor_create(struct wl_display *display,
|
|||||||
udev_device_unref(device);
|
udev_device_unref(device);
|
||||||
}
|
}
|
||||||
|
|
||||||
udev_enumerate_unref(e);
|
|
||||||
|
|
||||||
if (drm_device == NULL) {
|
if (drm_device == NULL) {
|
||||||
fprintf(stderr, "no drm device found\n");
|
fprintf(stderr, "no drm device found\n");
|
||||||
return NULL;
|
return NULL;
|
||||||
@@ -858,6 +856,9 @@ drm_compositor_create(struct wl_display *display,
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
udev_enumerate_unref(e);
|
||||||
|
path = NULL;
|
||||||
|
|
||||||
evdev_input_add_devices(&ec->base, ec->udev, seat);
|
evdev_input_add_devices(&ec->base, ec->udev, seat);
|
||||||
|
|
||||||
loop = wl_display_get_event_loop(ec->base.wl_display);
|
loop = wl_display_get_event_loop(ec->base.wl_display);
|
||||||
|
|||||||
Reference in New Issue
Block a user