From c4bdafaef02ce26fb0384f1a7c177cb2f5f109ca Mon Sep 17 00:00:00 2001 From: Jongwhan Lee <51560997+leejw51crypto@users.noreply.github.com> Date: Wed, 6 Dec 2023 15:46:38 +0800 Subject: [PATCH] Problem: wc 2.0 fix not applied to c++ api (fix #467) (#468) reformat update log --- CHANGELOG.md | 1 + extra-cpp-bindings/src/lib.rs | 1 + extra-cpp-bindings/src/walletconnect2.rs | 5 +++++ 3 files changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6554ba5a..e7b3091b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## [v0.0.24-alpha] - 2023-12-4 - fix walletconnect 2.0 send_tx +- add from_address for walletconnect 2.0 sendtx ## [v0.0.23-alpha] - 2023-8-7 - add mac universal binary (arm64 + x86_64) diff --git a/extra-cpp-bindings/src/lib.rs b/extra-cpp-bindings/src/lib.rs index 88a251e3..fe464792 100644 --- a/extra-cpp-bindings/src/lib.rs +++ b/extra-cpp-bindings/src/lib.rs @@ -129,6 +129,7 @@ mod ffi { /// wallet connect cronos(eth) eip155-tx signing info #[derive(Debug, Default)] pub struct WalletConnectTxEip155 { + pub from: String, // hexstring, "0x..." pub to: String, // hexstring, "0x..." pub value: String, // decimal string, in wei units pub data: Vec, // data, as bytes diff --git a/extra-cpp-bindings/src/walletconnect2.rs b/extra-cpp-bindings/src/walletconnect2.rs index d6646c2a..ba09d31d 100644 --- a/extra-cpp-bindings/src/walletconnect2.rs +++ b/extra-cpp-bindings/src/walletconnect2.rs @@ -300,6 +300,11 @@ impl Walletconnect2Client { let mut tx = Eip1559TransactionRequest::new(); + if !userinfo.from.is_empty() { + // from address is necessary for wc.20 , metamask + tx = tx.from(Address::from_str(&userinfo.from)?); + } + if !userinfo.to.is_empty() { tx = tx.to(NameOrAddress::Address(Address::from_str(&userinfo.to)?)); }