diff options
author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2017-10-23 11:53:49 +0100 |
---|---|---|
committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2017-10-23 11:53:49 +0100 |
commit | ca87cbd8525767aa920a448f8e0ec93688ab839f (patch) | |
tree | 19a50f6c2d9e9d32a41261ec5406aaab51b856f4 | |
parent | Merge pull request #2601 (diff) | |
download | monero-ca87cbd8525767aa920a448f8e0ec93688ab839f.tar.xz |
wallet2: fix subaddress fields serialization
When loading an older wallet cache, they wouldn't be initialized,
leading them to have random(ish) values, and so assigned to some
random subaddress.
-rw-r--r-- | src/wallet/wallet2.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/wallet/wallet2.h b/src/wallet/wallet2.h index 26680c3da..7933e0f00 100644 --- a/src/wallet/wallet2.h +++ b/src/wallet/wallet2.h @@ -1042,7 +1042,10 @@ namespace boost x.m_amount_out += x.m_change; } if (ver < 7) + { + x.m_subaddr_account = 0; return; + } a & x.m_subaddr_account; a & x.m_subaddr_indices; } @@ -1083,7 +1086,10 @@ namespace boost } a & x.m_unlock_time; if (ver < 5) + { + x.m_subaddr_account = 0; return; + } a & x.m_subaddr_account; a & x.m_subaddr_indices; } @@ -1099,7 +1105,10 @@ namespace boost return; a & x.m_timestamp; if (ver < 2) + { + x.m_subaddr_index = {}; return; + } a & x.m_subaddr_index; } @@ -1110,7 +1119,10 @@ namespace boost a & x.m_payment_id; a & x.m_description; if (ver < 17) + { + x.m_is_subaddress = false; return; + } a & x.m_is_subaddress; } @@ -1140,7 +1152,10 @@ namespace boost a & x.use_rct; a & x.dests; if (ver < 1) + { + x.subaddr_account = 0; return; + } a & x.subaddr_account; a & x.subaddr_indices; } |