diff --git a/libraries/chain/include/steem/chain/account_object.hpp b/libraries/chain/include/steem/chain/account_object.hpp index d37e61ebcd..3caa5024de 100644 --- a/libraries/chain/include/steem/chain/account_object.hpp +++ b/libraries/chain/include/steem/chain/account_object.hpp @@ -49,6 +49,7 @@ namespace steem { namespace chain { bool can_vote = true; util::manabar voting_manabar; + uint16_t voting_power = 0; asset balance = asset( 0, STEEM_SYMBOL ); ///< total liquid shares held by this account asset savings_balance = asset( 0, STEEM_SYMBOL ); ///< total liquid shares held by this account @@ -406,7 +407,7 @@ FC_REFLECT( steem::chain::account_object, (id)(name)(memo_key)(json_metadata)(proxy)(last_account_update) (created)(mined) (recovery_account)(last_account_recovery)(reset_account) - (comment_count)(lifetime_vote_count)(post_count)(can_vote)(voting_manabar) + (comment_count)(lifetime_vote_count)(post_count)(can_vote)(voting_manabar)(voting_power) (balance) (savings_balance) (sbd_balance)(sbd_seconds)(sbd_seconds_last_update)(sbd_last_interest_payment) diff --git a/libraries/plugins/apis/condenser_api/condenser_api.cpp b/libraries/plugins/apis/condenser_api/condenser_api.cpp index 0615293391..9f12853433 100644 --- a/libraries/plugins/apis/condenser_api/condenser_api.cpp +++ b/libraries/plugins/apis/condenser_api/condenser_api.cpp @@ -2082,6 +2082,9 @@ uint16_t api_account_object::_compute_voting_power( const database_api::api_acco vp_t2 /= vests; uint64_t vp_t2u = vp_t2.to_uint64(); + if( vp_t2u == 0 ) + return 0; + if( vp_t2u >= STEEM_100_PERCENT ) { wlog( "Truncated vp_t2u to STEEM_100_PERCENT for account ${a}", ("a", a.name) ); @@ -2089,7 +2092,7 @@ uint16_t api_account_object::_compute_voting_power( const database_api::api_acco } uint16_t vp_t1 = uint16_t( vp_t2u ) - uint16_t( std::min( vp_t2u, vp_dt ) ); - return vp_t1; + return vp_t1 ? vp_t1 : a.voting_power; } condenser_api::condenser_api() diff --git a/libraries/plugins/apis/database_api/include/steem/plugins/database_api/database_api_objects.hpp b/libraries/plugins/apis/database_api/include/steem/plugins/database_api/database_api_objects.hpp index 293804610f..afcb52718c 100644 --- a/libraries/plugins/apis/database_api/include/steem/plugins/database_api/database_api_objects.hpp +++ b/libraries/plugins/apis/database_api/include/steem/plugins/database_api/database_api_objects.hpp @@ -177,6 +177,7 @@ struct api_account_object post_count( a.post_count ), can_vote( a.can_vote ), voting_manabar( a.voting_manabar ), + voting_power( a.voting_power ), balance( a.balance ), savings_balance( a.savings_balance ), sbd_balance( a.sbd_balance ), @@ -253,6 +254,7 @@ struct api_account_object bool can_vote = false; util::manabar voting_manabar; + uint16_t voting_power = 0; asset balance; asset savings_balance; @@ -566,7 +568,7 @@ FC_REFLECT( steem::plugins::database_api::api_account_object, (id)(name)(owner)(active)(posting)(memo_key)(json_metadata)(proxy)(last_owner_update)(last_account_update) (created)(mined) (recovery_account)(last_account_recovery)(reset_account) - (comment_count)(lifetime_vote_count)(post_count)(can_vote)(voting_manabar) + (comment_count)(lifetime_vote_count)(post_count)(can_vote)(voting_manabar)(voting_power) (balance) (savings_balance) (sbd_balance)(sbd_seconds)(sbd_seconds_last_update)(sbd_last_interest_payment)