diff --git a/src/backend/drm/mod.rs b/src/backend/drm/mod.rs index 9a76cea..d4260e5 100644 --- a/src/backend/drm/mod.rs +++ b/src/backend/drm/mod.rs @@ -615,6 +615,21 @@ impl SessionObserver for StateToken> { return; } } + for (handle, &(ref info, ref connectors)) in device.old_state.iter() { + if let Err(err) = crtc::set( + &*device.context, + *handle, + info.fb(), + connectors, + info.position(), + info.mode(), + ) { + error!( + device.logger, + "Failed to reset crtc ({:?}). Error: {}", handle, err + ); + } + } device.active = false; if device.priviledged { if let Err(err) = device.drop_master() {