diff options
Diffstat (limited to 'src/wallet/wallet_rpc_server.cpp')
-rw-r--r-- | src/wallet/wallet_rpc_server.cpp | 40 |
1 files changed, 36 insertions, 4 deletions
diff --git a/src/wallet/wallet_rpc_server.cpp b/src/wallet/wallet_rpc_server.cpp index 6d5419521..3f28fec20 100644 --- a/src/wallet/wallet_rpc_server.cpp +++ b/src/wallet/wallet_rpc_server.cpp @@ -786,7 +786,15 @@ namespace tools try { - uint64_t mixin = m_wallet->adjust_mixin(req.mixin); + uint64_t mixin; + if(req.ring_size != 0) + { + mixin = m_wallet->adjust_mixin(req.ring_size - 1); + } + else + { + mixin = m_wallet->adjust_mixin(req.mixin); + } uint32_t priority = m_wallet->adjust_priority(req.priority); std::vector<wallet2::pending_tx> ptx_vector = m_wallet->create_transactions_2(dsts, mixin, req.unlock_time, priority, extra, req.account_index, req.subaddr_indices, m_trusted_daemon); @@ -838,7 +846,15 @@ namespace tools try { - uint64_t mixin = m_wallet->adjust_mixin(req.mixin); + uint64_t mixin; + if(req.ring_size != 0) + { + mixin = m_wallet->adjust_mixin(req.ring_size - 1); + } + else + { + mixin = m_wallet->adjust_mixin(req.mixin); + } uint32_t priority = m_wallet->adjust_priority(req.priority); LOG_PRINT_L2("on_transfer_split calling create_transactions_2"); std::vector<wallet2::pending_tx> ptx_vector = m_wallet->create_transactions_2(dsts, mixin, req.unlock_time, priority, extra, req.account_index, req.subaddr_indices, m_trusted_daemon); @@ -905,7 +921,15 @@ namespace tools try { - uint64_t mixin = m_wallet->adjust_mixin(req.mixin); + uint64_t mixin; + if(req.ring_size != 0) + { + mixin = m_wallet->adjust_mixin(req.ring_size - 1); + } + else + { + mixin = m_wallet->adjust_mixin(req.mixin); + } uint32_t priority = m_wallet->adjust_priority(req.priority); std::vector<wallet2::pending_tx> ptx_vector = m_wallet->create_transactions_all(req.below_amount, dsts[0].addr, dsts[0].is_subaddress, mixin, req.unlock_time, priority, extra, req.account_index, req.subaddr_indices, m_trusted_daemon); @@ -953,7 +977,15 @@ namespace tools try { - uint64_t mixin = m_wallet->adjust_mixin(req.mixin); + uint64_t mixin; + if(req.ring_size != 0) + { + mixin = m_wallet->adjust_mixin(req.ring_size - 1); + } + else + { + mixin = m_wallet->adjust_mixin(req.mixin); + } uint32_t priority = m_wallet->adjust_priority(req.priority); std::vector<wallet2::pending_tx> ptx_vector = m_wallet->create_transactions_single(ki, dsts[0].addr, dsts[0].is_subaddress, mixin, req.unlock_time, priority, extra, m_trusted_daemon); |