From 099bf70712ec72465c534e8acbecd4d0dc8ae20c Mon Sep 17 00:00:00 2001 From: Ivan Enderlin Date: Fri, 3 Apr 2020 16:18:24 +0200 Subject: [PATCH] fix(interface-types) Use lazy evaluation in the deserializer. --- src/interpreter/wasm/serde/de.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/interpreter/wasm/serde/de.rs b/src/interpreter/wasm/serde/de.rs index 50cabdd..fb6b335 100644 --- a/src/interpreter/wasm/serde/de.rs +++ b/src/interpreter/wasm/serde/de.rs @@ -234,7 +234,7 @@ impl<'de, 'a> de::Deserializer<'de> for &'a mut Deserializer<'de> { { // Both `InterfaceValue::S32` and `InterfaceValue::I32` // represent `i32`. - visitor.visit_i32(self.next_s32().or(self.next_i32())?) + visitor.visit_i32(self.next_s32().or_else(|_| self.next_i32())?) } fn deserialize_i64(self, visitor: V) -> Result