PreDepositVault::sweep() uses address.transfer which does not work for certain wallets
Summary
address.transfer forwards at most 2300 gas, which means it does not work for some smart contract wallets.
Vulnerability Detail
Admin calls PreDepositVault::sweep() using a smart contract wallet but it reverts trying to transfer native out.
Impact
Admin can't sweep ETH.
Code Snippet
Tool Used
Manual Review
Recommendation
Use sendValue() https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/utils/Address.sol#L33.