A delegation pool holds tokens deposited by delegators as well as rewards. When rewards start accruing, delegating a very-very small amount of new tokens by a delegator could lead to zero shares being assigned even if the tokens deposited were accepted.
Revert in any condition when no shares are assigned by adding a check in the
delegate() function right after the amount of shares is calculated for the amount of tokens received.
The proposal is fully backwards compatible.
The implementation was audited by Consensys Diligence.
The implementation has not yet been deployed to Testnet.