From 31784a4c4d92aada3272a86e19f1fc18469970cc Mon Sep 17 00:00:00 2001 From: Oliver Nordbjerg Date: Thu, 17 Mar 2022 08:10:46 +0100 Subject: [PATCH 1/2] feat: only strip 0x in ffi output if present Ports #904 --- forge/src/executor/inspector/cheatcodes/ext.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/forge/src/executor/inspector/cheatcodes/ext.rs b/forge/src/executor/inspector/cheatcodes/ext.rs index e139ae90fbf79..a08e4a1206602 100644 --- a/forge/src/executor/inspector/cheatcodes/ext.rs +++ b/forge/src/executor/inspector/cheatcodes/ext.rs @@ -13,7 +13,8 @@ fn ffi(args: &[String]) -> Result { .map_err(|err| err.to_string().encode())? .stdout; let output = unsafe { std::str::from_utf8_unchecked(&output) }; - let decoded = hex::decode(&output.trim()[2..]).map_err(|err| err.to_string().encode())?; + let decoded = hex::decode(&output.strip_prefix("0x").unwrap_or(output)) + .map_err(|err| err.to_string().encode())?; Ok(abi::encode(&[Token::Bytes(decoded.to_vec())]).into()) } From 2c1961c7408ef6c0e81b225c4c79652c77cb672c Mon Sep 17 00:00:00 2001 From: Georgios Konstantopoulos Date: Thu, 17 Mar 2022 03:32:32 -0700 Subject: [PATCH 2/2] Update forge/src/executor/inspector/cheatcodes/ext.rs --- forge/src/executor/inspector/cheatcodes/ext.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge/src/executor/inspector/cheatcodes/ext.rs b/forge/src/executor/inspector/cheatcodes/ext.rs index a08e4a1206602..7d12a89990b1d 100644 --- a/forge/src/executor/inspector/cheatcodes/ext.rs +++ b/forge/src/executor/inspector/cheatcodes/ext.rs @@ -13,7 +13,7 @@ fn ffi(args: &[String]) -> Result { .map_err(|err| err.to_string().encode())? .stdout; let output = unsafe { std::str::from_utf8_unchecked(&output) }; - let decoded = hex::decode(&output.strip_prefix("0x").unwrap_or(output)) + let decoded = hex::decode(&output.trim().strip_prefix("0x").unwrap_or(output)) .map_err(|err| err.to_string().encode())?; Ok(abi::encode(&[Token::Bytes(decoded.to_vec())]).into())