In the governance.sol, a user can vote at the proposal.endTime and also the quorom can be reached at this time and thus the proposal can be queued/rejected. Thus the last persons voting may not be counted.
The state() function is reponsible for getting the state of the proposal, but at time = proposal.endTime, the proposal is not considered active by this function, and thus the proposal can be executed/rejected now.
But in the castVote function the voting is allowed even at time = proposal.endTime, this could cause the vote casted at this time to be not taken into account.
Impact
voting at the proposal.endTime may be not taken into account.
manual review
change the equality symbol at one place to match the other.
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.