From 3a8b8a3b5b9a4689a62186e669d1753d59d83680 Mon Sep 17 00:00:00 2001 From: Roman Olearski Date: Mon, 28 Nov 2016 09:06:29 +0100 Subject: [PATCH] Cherry-picked commit b9508c6. little correction for solution ...issues/#10 avoid generating dividend_payout virtual operations for zero-size payouts --- libraries/chain/db_maint.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/libraries/chain/db_maint.cpp b/libraries/chain/db_maint.cpp index 2cb012e1..19db3f3f 100644 --- a/libraries/chain/db_maint.cpp +++ b/libraries/chain/db_maint.cpp @@ -934,13 +934,15 @@ void schedule_pending_dividend_balances(database& db, auto itr = vesting_amounts.find(holder_balance_object.owner); if (itr != vesting_amounts.end()) holder_balance += itr->second; - if (holder_balance.value) + //if (holder_balance.value) + + fc::uint128_t amount_to_credit(delta_balance.value); + amount_to_credit *= holder_balance.value; + amount_to_credit /= total_balance_of_dividend_asset.value; + share_type shares_to_credit((int64_t)amount_to_credit.to_uint64()); + if (shares_to_credit.value) { - fc::uint128_t amount_to_credit(delta_balance.value); - amount_to_credit *= holder_balance.value; - amount_to_credit /= total_balance_of_dividend_asset.value; wdump((delta_balance.value)(holder_balance)(total_balance_of_dividend_asset)); - share_type shares_to_credit((int64_t)amount_to_credit.to_uint64()); remaining_amount_to_distribute -= shares_to_credit;