From e1a77ab15f9e311edffe855cf5f5a2f078cdd1ea Mon Sep 17 00:00:00 2001 From: Hadrien Croubois Date: Wed, 1 Mar 2023 19:35:15 +0100 Subject: [PATCH] Fix an upgrade replay bug in Governor.propose (#4082) --- contracts/governance/Governor.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/governance/Governor.sol b/contracts/governance/Governor.sol index 1483da6d2..12fde79de 100644 --- a/contracts/governance/Governor.sol +++ b/contracts/governance/Governor.sol @@ -276,7 +276,7 @@ abstract contract Governor is Context, ERC165, EIP712, IGovernor, IERC721Receive require(targets.length == values.length, "Governor: invalid proposal length"); require(targets.length == calldatas.length, "Governor: invalid proposal length"); require(targets.length > 0, "Governor: empty proposal"); - require(_proposals[proposalId].proposer == address(0), "Governor: proposal already exists"); + require(_proposals[proposalId].voteStart == 0, "Governor: proposal already exists"); uint256 snapshot = currentTimepoint + votingDelay(); uint256 deadline = snapshot + votingPeriod();