Skip to content

Commit f7b0bf7

Browse files
committed
fix: handle native ETH in TokenCompressor
1 parent ba011a5 commit f7b0bf7

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

contracts/compressors/TokenCompressor.sol

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ import {IERC20Metadata} from "@openzeppelin/contracts/token/ERC20/extensions/IER
88
import {LibString} from "@solady/utils/LibString.sol";
99
import {ITokenCompressor} from "../interfaces/ITokenCompressor.sol";
1010

11+
address constant ETH_ADDRESS = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE;
12+
1113
/// @title Token compressor 3.0.
1214
/// @notice Helper contract to fetch ERC20 token metadata
1315
contract TokenCompressor is ITokenCompressor {
@@ -16,6 +18,10 @@ contract TokenCompressor is ITokenCompressor {
1618
bytes32 public constant override contractType = "TOKEN_COMPRESSOR";
1719

1820
function getTokenInfo(address token) public view returns (TokenData memory result) {
21+
if (token == ETH_ADDRESS) {
22+
return TokenData({addr: ETH_ADDRESS, decimals: 18, symbol: "ETH", name: "Ether"});
23+
}
24+
1925
result.addr = token;
2026
result.decimals = IERC20Metadata(token).decimals();
2127

0 commit comments

Comments
 (0)