Not all tock boards have upgrade storage
This commit is contained in:
6
src/env/tock/mod.rs
vendored
6
src/env/tock/mod.rs
vendored
@@ -21,7 +21,7 @@ mod storage;
|
|||||||
pub struct TockEnv {
|
pub struct TockEnv {
|
||||||
rng: TockRng256,
|
rng: TockRng256,
|
||||||
store: Store<SyscallStorage>,
|
store: Store<SyscallStorage>,
|
||||||
upgrade_storage: SyscallUpgradeStorage,
|
upgrade_storage: Option<SyscallUpgradeStorage>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl TockEnv {
|
impl TockEnv {
|
||||||
@@ -36,7 +36,7 @@ impl TockEnv {
|
|||||||
assert!(!TAKEN.fetch_or(true, Ordering::SeqCst));
|
assert!(!TAKEN.fetch_or(true, Ordering::SeqCst));
|
||||||
let storage = unsafe { steal_storage() }.unwrap();
|
let storage = unsafe { steal_storage() }.unwrap();
|
||||||
let store = Store::new(storage).ok().unwrap();
|
let store = Store::new(storage).ok().unwrap();
|
||||||
let upgrade_storage = SyscallUpgradeStorage::new().unwrap();
|
let upgrade_storage = SyscallUpgradeStorage::new().ok();
|
||||||
TockEnv {
|
TockEnv {
|
||||||
rng: TockRng256 {},
|
rng: TockRng256 {},
|
||||||
store,
|
store,
|
||||||
@@ -83,7 +83,7 @@ impl Env for TockEnv {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn upgrade_storage(&mut self) -> Option<&mut Self::UpgradeStorage> {
|
fn upgrade_storage(&mut self) -> Option<&mut Self::UpgradeStorage> {
|
||||||
Some(&mut self.upgrade_storage)
|
self.upgrade_storage.as_mut()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user