From 857773393d7041a4fbd13ecaf0133f3d40bc03ab Mon Sep 17 00:00:00 2001 From: bjorn3 <17426603+bjorn3@users.noreply.github.com> Date: Fri, 19 Jul 2024 21:56:56 +0200 Subject: [PATCH] Ensure fields of SyncRect are not reordered Without repr(C), repr(packed) technically allows reordering fields. --- graphics/fbcond/src/display.rs | 2 +- graphics/vesad/src/screen.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/graphics/fbcond/src/display.rs b/graphics/fbcond/src/display.rs index 96ea7a144a..01f58ed2c8 100644 --- a/graphics/fbcond/src/display.rs +++ b/graphics/fbcond/src/display.rs @@ -13,7 +13,7 @@ use syscall::{O_CLOEXEC, O_NONBLOCK, O_RDWR}; // Keep synced with vesad #[derive(Clone, Copy)] -#[repr(packed)] +#[repr(C, packed)] pub struct SyncRect { pub x: i32, pub y: i32, diff --git a/graphics/vesad/src/screen.rs b/graphics/vesad/src/screen.rs index 2369aafae8..d77c095c9b 100644 --- a/graphics/vesad/src/screen.rs +++ b/graphics/vesad/src/screen.rs @@ -9,7 +9,7 @@ use crate::display::OffscreenBuffer; // Keep synced with orbital #[derive(Clone, Copy)] -#[repr(packed)] +#[repr(C, packed)] pub struct SyncRect { pub x: i32, pub y: i32,