fix: advertise direct renderer shm formats

This commit is contained in:
Samuel Onoja committed 2026-09-24 16:38:35 +01:00
1 parent edef3a59ff
commit bf10a2f838
1 file changed
+2 -1
+2 -1
View File
@@ -9,7 +9,7 @@ use smithay::{
drm::{DrmDevice, DrmDeviceFd, DrmEvent, DrmEventTime, DrmNode, GbmBufferedSurface}, drm::{DrmDevice, DrmDeviceFd, DrmEvent, DrmEventTime, DrmNode, GbmBufferedSurface},
egl::{EGLContext, EGLDisplay}, egl::{EGLContext, EGLDisplay},
libinput::{LibinputInputBackend, LibinputSessionInterface}, libinput::{LibinputInputBackend, LibinputSessionInterface},
renderer::{Bind, ImportDma, damage::OutputDamageTracker, gles::GlesRenderer}, renderer::{Bind, ImportDma, ImportMemWl, damage::OutputDamageTracker, gles::GlesRenderer},
session::{Event as SessionEvent, Session, libseat::LibSeatSession}, session::{Event as SessionEvent, Session, libseat::LibSeatSession},
udev::{UdevBackend, UdevEvent, primary_gpu}, udev::{UdevBackend, UdevEvent, primary_gpu},
}, },
@@ -171,6 +171,7 @@ fn open_primary_device(
let egl_context = EGLContext::new(&egl_display)?; let egl_context = EGLContext::new(&egl_display)?;
// SAFETY: the new context is not current on another thread and remains renderer-owned. // SAFETY: the new context is not current on another thread and remains renderer-owned.
let renderer = unsafe { GlesRenderer::new(egl_context)? }; let renderer = unsafe { GlesRenderer::new(egl_context)? };
state.shm_state.update_formats(renderer.shm_formats());
let (connector, crtc, mode) = select_output(&drm)?; let (connector, crtc, mode) = select_output(&drm)?;
let output = create_output(state, &connector, mode); let output = create_output(state, &connector, mode);
if let Some(backend) = state.direct_backend.as_mut() { if let Some(backend) = state.direct_backend.as_mut() {