When calling closePot the function calculates the managers cut and sends it to the msg.sender. As this is a onlyOwner function and the ContestManger.sol is used to deploy pot's, the msg.sender is the ContestManger.sol. He receives the tokens and real owner never gets them.
As the msg.sender inside of the closePot
always will be the ContestManger.sol, that contract receives the manager cut and real owner never gets them, as they are stuck in the ContestManger.sol contract.
The manger will lose his cut and the tokens are stuck inside the ContestManager.sol contract.
manual review
Consider updating the closePot
function to send the manager cut to the owner of the ContestManager.sol contract like so:
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.