From a99ab49dd58bfd8b9db7a98946a8536254eb80fa Mon Sep 17 00:00:00 2001 From: moneromooo-monero Date: Sun, 13 Nov 2016 11:34:43 +0000 Subject: [PATCH] wallet: fix serialization of new m_key_image_known member --- src/wallet/wallet2.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h index d42385ca..417e754a 100644 --- a/src/wallet/wallet2.h +++ b/src/wallet/wallet2.h @@ -611,7 +611,7 @@ namespace tools }; } BOOST_CLASS_VERSION(tools::wallet2, 15) -BOOST_CLASS_VERSION(tools::wallet2::transfer_details, 5) +BOOST_CLASS_VERSION(tools::wallet2::transfer_details, 6) BOOST_CLASS_VERSION(tools::wallet2::payment_details, 1) BOOST_CLASS_VERSION(tools::wallet2::unconfirmed_transfer_details, 6) BOOST_CLASS_VERSION(tools::wallet2::confirmed_transfer_details, 3) @@ -640,7 +640,10 @@ namespace boost { x.m_rct = x.m_tx.vout[x.m_internal_output_index].amount == 0; } - x.m_key_image_known = true; + if (ver < 6) + { + x.m_key_image_known = true; + } } template @@ -689,7 +692,18 @@ namespace boost } a & x.m_rct; if (ver < 5) + { + initialize_transfer_details(a, x, ver); return; + } + if (ver < 6) + { + // v5 did not properly initialize + uint8_t u; + a & u; + x.m_key_image_known = true; + return; + } a & x.m_key_image_known; }