From 39a46baa2c0b7d036d6d35b1f6aea565367bb16e Mon Sep 17 00:00:00 2001 From: Franck Royer Date: Mon, 8 Feb 2021 14:18:33 +1100 Subject: [PATCH] Preemptively box cancel tx to avoid size difference in enum --- swap/src/database/alice.rs | 2 +- swap/src/protocol/alice/state.rs | 2 +- swap/src/protocol/alice/swap.rs | 5 ++++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/swap/src/database/alice.rs b/swap/src/database/alice.rs index 42c7a2b3..9a9c4383 100644 --- a/swap/src/database/alice.rs +++ b/swap/src/database/alice.rs @@ -150,7 +150,7 @@ impl From for AliceState { AliceState::BtcCancelled { state3: Box::new(state), - tx_cancel, + tx_cancel: Box::new(tx_cancel), } } Alice::BtcPunishable(state3) => { diff --git a/swap/src/protocol/alice/state.rs b/swap/src/protocol/alice/state.rs index b1bc2f65..0ec03f05 100644 --- a/swap/src/protocol/alice/state.rs +++ b/swap/src/protocol/alice/state.rs @@ -46,7 +46,7 @@ pub enum AliceState { }, BtcRedeemed, BtcCancelled { - tx_cancel: TxCancel, + tx_cancel: Box, state3: Box, }, BtcRefunded { diff --git a/swap/src/protocol/alice/swap.rs b/swap/src/protocol/alice/swap.rs index 7edc91ea..26e7c707 100644 --- a/swap/src/protocol/alice/swap.rs +++ b/swap/src/protocol/alice/swap.rs @@ -305,7 +305,10 @@ async fn run_until_internal( ) .await?; - let state = AliceState::BtcCancelled { state3, tx_cancel }; + let state = AliceState::BtcCancelled { + state3, + tx_cancel: Box::new(tx_cancel), + }; let db_state = (&state).into(); db.insert_latest_state(swap_id, database::Swap::Alice(db_state)) .await?;