getActivePlayerIndex should not return 0 if the caller is not in the players array because there may be a different player at players[0].
You may confuse players about whether they have an entry. Since neither the refund function or any other function calls getActivePlayerIndex, it won't allow a malicious user to do anything malicious luckily.
Manual review
Instead have the function revert if msg.sender is not in the players array. First add a function checkAddressInArray:
Then revise getActivePlayerIndex so it reverts if the person calling it is not in the array of players:
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.