The check for RENCRV_VAULT.blockLock is only needed when if (_amounts[1] > 0 || _amounts[2] > 0).
However, in the current implementation, the check is done at the very first, making transactions unrelated to RENCRV_VAULT fail unexpectedly if there is a prior transaction involved with RENCRV_VAULT in the same block.
Handle
WatchPug
Vulnerability details
The check for
RENCRV_VAULT.blockLock
is only needed whenif (_amounts[1] > 0 || _amounts[2] > 0)
.However, in the current implementation, the check is done at the very first, making transactions unrelated to
RENCRV_VAULT
fail unexpectedly if there is a prior transaction involved withRENCRV_VAULT
in the same block.https://github.com/Badger-Finance/badger-ibbtc-utility-zaps/blob/8d265aacb905d30bd95dcd54505fb26dc1f9b0b6/contracts/IbbtcVaultZap.sol#L149-L199