diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c2e028f73..55f3a3bfff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -38,6 +38,12 @@ Ref: https://keepachangelog.com/en/1.0.0/ ## Unreleased +### Bug Fixes + +* (evm) [tharsis#1118](https://github.com/tharsis/ethermint/pull/1118) Fix `Type()` `Account` method `EmptyCodeHash` comparison + +## [v0.16.0] - 2022-06-06 + ### State Machine Breaking * (feemarket) [tharsis#1105](https://github.com/tharsis/ethermint/pull/1105) Update `BaseFee` calculation based on `GasWanted` instead of `GasUsed`. diff --git a/types/account.go b/types/account.go index 4f7f8e0d71..08c5127952 100644 --- a/types/account.go +++ b/types/account.go @@ -75,7 +75,7 @@ func (acc *EthAccount) SetCodeHash(codeHash common.Hash) error { // Type returns the type of Ethereum Account (EOA or Contract) func (acc EthAccount) Type() int8 { - if bytes.Equal(emptyCodeHash, common.Hex2Bytes(acc.CodeHash)) { + if bytes.Equal(emptyCodeHash, common.HexToHash(acc.CodeHash).Bytes()) { return AccountTypeEOA } return AccountTypeContract diff --git a/types/account_test.go b/types/account_test.go index 10b18a60a5..7571e9bdfe 100644 --- a/types/account_test.go +++ b/types/account_test.go @@ -51,8 +51,8 @@ func TestAccountTestSuite(t *testing.T) { } func (suite *AccountTestSuite) TestAccountType() { - suite.account.CodeHash = common.Bytes2Hex(crypto.Keccak256(nil)) + suite.account.CodeHash = common.BytesToHash(crypto.Keccak256(nil)).Hex() suite.Require().Equal(types.AccountTypeEOA, suite.account.Type()) - suite.account.CodeHash = common.Bytes2Hex(crypto.Keccak256([]byte{1, 2, 3})) + suite.account.CodeHash = common.BytesToHash(crypto.Keccak256([]byte{1, 2, 3})).Hex() suite.Require().Equal(types.AccountTypeContract, suite.account.Type()) }