1234567891011121314151617181920212223242526272829303132333435 |
- // SPDX-License-Identifier: MIT
- pragma solidity ^0.8.20;
- import {ERC20Permit} from "../../token/ERC20/extensions/ERC20Permit.sol";
- abstract contract ERC20PermitNoRevertMock is ERC20Permit {
- function permitThatMayRevert(
- address owner,
- address spender,
- uint256 value,
- uint256 deadline,
- uint8 v,
- bytes32 r,
- bytes32 s
- ) public virtual {
- super.permit(owner, spender, value, deadline, v, r, s);
- }
- function permit(
- address owner,
- address spender,
- uint256 value,
- uint256 deadline,
- uint8 v,
- bytes32 r,
- bytes32 s
- ) public virtual override {
- try this.permitThatMayRevert(owner, spender, value, deadline, v, r, s) {
- // do nothing
- } catch {
- // do nothing
- }
- }
- }
|