Skip to content

Commit 23e869f

Browse files
committed
Problem: avoid Derived contract must override function _contextSuffixLength error
1 parent e85528e commit 23e869f

File tree

6 files changed

+24
-0
lines changed

6 files changed

+24
-0
lines changed

contracts/external-deps/openzeppelin/metatx/ERC2771Context.sol

+4
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,8 @@ abstract contract ERC2771Context is Context {
4141
}
4242

4343
uint256[49] private __gap;
44+
45+
function _contextSuffixLength() internal view virtual override returns (uint256) {
46+
return 20;
47+
}
4448
}

contracts/infra/ContractPublisher.sol

+4
Original file line numberDiff line numberDiff line change
@@ -265,4 +265,8 @@ contract ContractPublisher is IContractPublisher, ERC2771Context, AccessControlE
265265
function _msgData() internal view virtual override(Context, ERC2771Context) returns (bytes calldata) {
266266
return ERC2771Context._msgData();
267267
}
268+
269+
function _contextSuffixLength() internal view virtual override(Context, ERC2771Context) returns (uint256) {
270+
return ERC2771Context._contextSuffixLength();
271+
}
268272
}

contracts/infra/TWFactory.sol

+4
Original file line numberDiff line numberDiff line change
@@ -137,4 +137,8 @@ contract TWFactory is Multicall, ERC2771Context, AccessControlEnumerable, IContr
137137
function _msgData() internal view virtual override(Context, ERC2771Context) returns (bytes calldata) {
138138
return ERC2771Context._msgData();
139139
}
140+
141+
function _contextSuffixLength() internal view virtual override(Context, ERC2771Context) returns (uint256) {
142+
return ERC2771Context._contextSuffixLength();
143+
}
140144
}

contracts/infra/TWFee.sol

+4
Original file line numberDiff line numberDiff line change
@@ -159,4 +159,8 @@ contract TWFee is ITWFee, Multicall, ERC2771Context, AccessControlEnumerable, IF
159159
function _msgData() internal view virtual override(Context, ERC2771Context) returns (bytes calldata) {
160160
return ERC2771Context._msgData();
161161
}
162+
163+
function _contextSuffixLength() internal view virtual override(Context, ERC2771Context) returns (uint256) {
164+
return ERC2771Context._contextSuffixLength();
165+
}
162166
}

contracts/infra/TWMultichainRegistry.sol

+4
Original file line numberDiff line numberDiff line change
@@ -113,4 +113,8 @@ contract TWMultichainRegistry is ITWMultichainRegistry, Multicall, ERC2771Contex
113113
function _msgData() internal view virtual override(Context, ERC2771Context) returns (bytes calldata) {
114114
return ERC2771Context._msgData();
115115
}
116+
117+
function _contextSuffixLength() internal view virtual override(Context, ERC2771Context) returns (uint256) {
118+
return ERC2771Context._contextSuffixLength();
119+
}
116120
}

contracts/infra/TWRegistry.sol

+4
Original file line numberDiff line numberDiff line change
@@ -67,4 +67,8 @@ contract TWRegistry is Multicall, ERC2771Context, AccessControlEnumerable {
6767
function _msgData() internal view virtual override(Context, ERC2771Context) returns (bytes calldata) {
6868
return ERC2771Context._msgData();
6969
}
70+
71+
function _contextSuffixLength() internal view virtual override(Context, ERC2771Context) returns (uint256) {
72+
return ERC2771Context._contextSuffixLength();
73+
}
7074
}

0 commit comments

Comments
 (0)