diff --git a/libraries/chain/include/graphene/chain/config.hpp b/libraries/chain/include/graphene/chain/config.hpp index 8c4b0346..03532104 100644 --- a/libraries/chain/include/graphene/chain/config.hpp +++ b/libraries/chain/include/graphene/chain/config.hpp @@ -232,10 +232,10 @@ #define SIDECHAIN_SYMBOL "pBTC" #define SIDECHAIN_PRECISION_DIGITS 8 #define SIDECHAIN_MAX_SHARE_SUPPLY int64_t(21000000ll * 100000000ll) -#define SIDECHAIN_NUMBER_INVALID_KEYS 5 +#define SIDECHAIN_NUMBER_INVALID_KEYS 5 #define SIDECHAIN_DEFAULT_NUMBER_SIG_MULTISIG 5 #define SIDECHAIN_DEFAULT_NUMBER_OF_CONFIRMATIONS 6 -#define SIDECHAIN_DEFAULT_MAX_UNCONFIRMED_VINS 25 +#define SIDECHAIN_DEFAULT_MAX_UNCONFIRMED_VOUTS 25 #define SIDECHAIN_DEFAULT_MAX_CONDENSING_TX_VINS 5 #define SIDECHAIN_DEFAULT_MAX_CONDENSING_TX_VOUTS 5 #define SIDECHAIN_DEFAULT_PERCENT_PAYMENT_TO_WITNESSES (GRAPHENE_1_PERCENT/10) diff --git a/libraries/sidechain/include/sidechain/primary_wallet_vout_manager.hpp b/libraries/sidechain/include/sidechain/primary_wallet_vout_manager.hpp index 76151275..1a21a3dd 100644 --- a/libraries/sidechain/include/sidechain/primary_wallet_vout_manager.hpp +++ b/libraries/sidechain/include/sidechain/primary_wallet_vout_manager.hpp @@ -17,7 +17,7 @@ class primary_wallet_vout_manager public: primary_wallet_vout_manager( graphene::chain::database& _db ) : db( _db ) {} - bool is_reach_max_unconfirmaed_vout() const; + bool is_max_vouts() const; fc::optional< primary_wallet_vout_object > get_latest_unused_vout() const; diff --git a/libraries/sidechain/include/sidechain/sidechain_parameters.hpp b/libraries/sidechain/include/sidechain/sidechain_parameters.hpp index 440d6a0d..1aedc117 100644 --- a/libraries/sidechain/include/sidechain/sidechain_parameters.hpp +++ b/libraries/sidechain/include/sidechain/sidechain_parameters.hpp @@ -7,7 +7,7 @@ namespace sidechain { struct sidechain_parameters_extension { uint8_t maximum_condensing_tx_vins = SIDECHAIN_DEFAULT_MAX_CONDENSING_TX_VINS; uint8_t maximum_condensing_tx_vouts = SIDECHAIN_DEFAULT_MAX_CONDENSING_TX_VOUTS; - uint8_t maxmum_unconfirmed_vins = SIDECHAIN_DEFAULT_MAX_UNCONFIRMED_VINS; + uint8_t maximum_unconfirmed_vouts = SIDECHAIN_DEFAULT_MAX_UNCONFIRMED_VOUTS; uint16_t percent_payment_to_witnesses = SIDECHAIN_DEFAULT_PERCENT_PAYMENT_TO_WITNESSES; uint8_t multisig_sigs_num = SIDECHAIN_DEFAULT_NUMBER_SIG_MULTISIG; uint8_t confirmations_num = SIDECHAIN_DEFAULT_NUMBER_OF_CONFIRMATIONS; @@ -21,7 +21,7 @@ namespace sidechain { FC_REFLECT( sidechain::sidechain_parameters_extension, (maximum_condensing_tx_vins) (maximum_condensing_tx_vouts) - (maxmum_unconfirmed_vins) + (maximum_unconfirmed_vouts) (percent_payment_to_witnesses) (multisig_sigs_num) (confirmations_num) diff --git a/libraries/sidechain/input_withdrawal_info.cpp b/libraries/sidechain/input_withdrawal_info.cpp index 63592291..4711f027 100644 --- a/libraries/sidechain/input_withdrawal_info.cpp +++ b/libraries/sidechain/input_withdrawal_info.cpp @@ -62,7 +62,7 @@ std::vector input_withdrawal_info::get_amounts( const std::vector input_withdrawal_info::get_info_for_pw_vin() { fc::optional< primary_wallet_vout_object > vout = db.pw_vout_manager.get_latest_unused_vout(); - if( !vout.valid() ) { + if( !vout.valid() || db.pw_vout_manager.is_max_vouts() ) { return fc::optional(); } diff --git a/libraries/sidechain/primary_wallet_vout_manager.cpp b/libraries/sidechain/primary_wallet_vout_manager.cpp index 6b6400bd..97bd31ba 100644 --- a/libraries/sidechain/primary_wallet_vout_manager.cpp +++ b/libraries/sidechain/primary_wallet_vout_manager.cpp @@ -6,10 +6,10 @@ namespace sidechain { -bool primary_wallet_vout_manager::is_reach_max_unconfirmaed_vout() const +bool primary_wallet_vout_manager::is_max_vouts() const { const auto& PW_vout_idx = db.get_index_type().indices().get< graphene::chain::by_id >(); - return !( PW_vout_idx.size() < db.get_sidechain_params().maxmum_unconfirmed_vins ); + return !( ( PW_vout_idx.size() - 1 ) <= db.get_sidechain_params().maximum_unconfirmed_vouts ); } fc::optional< primary_wallet_vout_object > primary_wallet_vout_manager::get_latest_unused_vout() const diff --git a/tests/sidechain_tests/primary_wallet_vout_manager_tests.cpp b/tests/sidechain_tests/primary_wallet_vout_manager_tests.cpp index a6f2229e..333a8156 100644 --- a/tests/sidechain_tests/primary_wallet_vout_manager_tests.cpp +++ b/tests/sidechain_tests/primary_wallet_vout_manager_tests.cpp @@ -35,7 +35,7 @@ BOOST_AUTO_TEST_CASE( check_max_pw_vout_objects ) create_primary_wallet_vouts( pw_vout_manager, db, 24 ); BOOST_CHECK( idx.size() == 25 ); - BOOST_CHECK( pw_vout_manager.is_reach_max_unconfirmaed_vout() == true ); + BOOST_CHECK( pw_vout_manager.is_max_vouts() == true ); } BOOST_AUTO_TEST_CASE( check_pw_vout_objects_chain )