If the number of participants in the tournament too large, the winner may not be able to withdraw his winning reward
Likelihood: Medium
If a loop processes too many items or contains heavy computations, it may run out of gas, causing the transaction to fail and revert all changes made during its execution.
Impact:
For example, if 10000 players join the tournament, the loop in _getWinnerShares() function will run out of gas, the withdraw transaction will be reverted
Winners may not be able to claim their winning reward
Limit number of participants of a tournament may help resolve this DoS issue
The _getWinnerShares() function is intended to iterate through all users and sum their shares for the winning country, returning the total.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.