diff --git a/light-client/src/errors.rs b/light-client/src/errors.rs index f184e91..67e7f33 100644 --- a/light-client/src/errors.rs +++ b/light-client/src/errors.rs @@ -225,6 +225,8 @@ pub enum Error { UnexpectedGameCreatedAt(u64, u64), #[error("UnexpectedCreatedAt: data={0}")] UnexpectedCreatedAt(TryFromSliceError), + #[error("UnexpectedStatusDefenderWin: data={0}")] + UnexpectedStatusDefenderWin(u32), // Framework #[error("LCPError: err={0:?}")] diff --git a/light-client/src/misbehaviour.rs b/light-client/src/misbehaviour.rs index d44d068..00844d8 100644 --- a/light-client/src/misbehaviour.rs +++ b/light-client/src/misbehaviour.rs @@ -100,7 +100,8 @@ impl TryFrom for FaultDisputeGameConfig { fault_dispute_game_status_slot_offset: value.fault_dispute_game_status_slot_offset, fault_dispute_game_created_at_slot_offset: value .fault_dispute_game_created_at_slot_offset, - status_defender_win: value.status_defender_win as u8, + status_defender_win: u8::try_from(value.status_defender_win) + .map_err(|_| Error::UnexpectedStatusDefenderWin(value.status_defender_win))?, }) } }