From 7bc6aeb99857f3fbe6362b06851eb8d1049802df Mon Sep 17 00:00:00 2001 From: sawyer bristol Date: Tue, 28 Oct 2025 17:44:31 -0600 Subject: [PATCH] forgot display lock --- kernel/src/display.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/kernel/src/display.rs b/kernel/src/display.rs index b645a40..677a4b8 100644 --- a/kernel/src/display.rs +++ b/kernel/src/display.rs @@ -1,4 +1,4 @@ -use crate::framebuffer::{self, AtomicFrameBuffer}; +use crate::framebuffer::{self, AtomicFrameBuffer, FB_PAUSED}; use alloc::vec; use core::sync::atomic::{AtomicBool, Ordering}; use embassy_rp::{ @@ -53,7 +53,9 @@ pub async fn init_display( #[embassy_executor::task] pub async fn display_handler(mut display: DISPLAY) { loop { - unsafe { FRAMEBUFFER.safe_draw(&mut display).await.unwrap() }; + if !FB_PAUSED.load(Ordering::Acquire) { + unsafe { FRAMEBUFFER.safe_draw(&mut display).await.unwrap() }; + } // small yield to allow other tasks to run Timer::after_nanos(100).await;