From 3211342934e6141de6fd351dfc00d09de1f84ada Mon Sep 17 00:00:00 2001 From: Julien Cretin Date: Mon, 7 Mar 2022 15:59:37 +0100 Subject: [PATCH] Not all tock boards have upgrade storage --- src/env/tock/mod.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/env/tock/mod.rs b/src/env/tock/mod.rs index ef2468b..273f147 100644 --- a/src/env/tock/mod.rs +++ b/src/env/tock/mod.rs @@ -21,7 +21,7 @@ mod storage; pub struct TockEnv { rng: TockRng256, store: Store, - upgrade_storage: SyscallUpgradeStorage, + upgrade_storage: Option, } impl TockEnv { @@ -36,7 +36,7 @@ impl TockEnv { assert!(!TAKEN.fetch_or(true, Ordering::SeqCst)); let storage = unsafe { steal_storage() }.unwrap(); let store = Store::new(storage).ok().unwrap(); - let upgrade_storage = SyscallUpgradeStorage::new().unwrap(); + let upgrade_storage = SyscallUpgradeStorage::new().ok(); TockEnv { rng: TockRng256 {}, store, @@ -83,7 +83,7 @@ impl Env for TockEnv { } fn upgrade_storage(&mut self) -> Option<&mut Self::UpgradeStorage> { - Some(&mut self.upgrade_storage) + self.upgrade_storage.as_mut() } }