diff --git a/pkg/core/asset_state.go b/pkg/core/asset_state.go index fc0fe09e7..6af69172c 100644 --- a/pkg/core/asset_state.go +++ b/pkg/core/asset_state.go @@ -43,7 +43,7 @@ type AssetState struct { Precision uint8 FeeMode uint8 FeeAddress util.Uint160 - Owner *keys.PublicKey + Owner keys.PublicKey Admin util.Uint160 Issuer util.Uint160 Expiration uint32 @@ -63,7 +63,6 @@ func (a *AssetState) DecodeBinary(br *io.BinReader) { br.ReadLE(&a.FeeMode) br.ReadBytes(a.FeeAddress[:]) - a.Owner = &keys.PublicKey{} a.Owner.DecodeBinary(br) br.ReadBytes(a.Admin[:]) br.ReadBytes(a.Issuer[:]) diff --git a/pkg/core/asset_state_test.go b/pkg/core/asset_state_test.go index 8fbfb3791..ac9d1ef7b 100644 --- a/pkg/core/asset_state_test.go +++ b/pkg/core/asset_state_test.go @@ -5,7 +5,6 @@ import ( "github.com/CityOfZion/neo-go/pkg/core/storage" "github.com/CityOfZion/neo-go/pkg/core/transaction" - "github.com/CityOfZion/neo-go/pkg/crypto/keys" "github.com/CityOfZion/neo-go/pkg/io" "github.com/CityOfZion/neo-go/pkg/util" "github.com/stretchr/testify/assert" @@ -20,7 +19,6 @@ func TestEncodeDecodeAssetState(t *testing.T) { Available: util.Fixed8(100), Precision: 0, FeeMode: feeMode, - Owner: &keys.PublicKey{}, Admin: randomUint160(), Issuer: randomUint160(), Expiration: 10, @@ -47,7 +45,6 @@ func TestPutGetAssetState(t *testing.T) { Available: util.Fixed8(100), Precision: 8, FeeMode: feeMode, - Owner: &keys.PublicKey{}, Admin: randomUint160(), Issuer: randomUint160(), Expiration: 10, diff --git a/pkg/core/blockchain.go b/pkg/core/blockchain.go index 6544ebc4b..0a75d9d2a 100644 --- a/pkg/core/blockchain.go +++ b/pkg/core/blockchain.go @@ -1340,7 +1340,7 @@ func processStateTX(chainState *BlockChainState, tx *transaction.StateTX) error } func processEnrollmentTX(chainState *BlockChainState, tx *transaction.EnrollmentTX) error { - validatorState, err := chainState.validators.getAndUpdate(chainState.store, tx.PublicKey) + validatorState, err := chainState.validators.getAndUpdate(chainState.store, &tx.PublicKey) if err != nil { return err } diff --git a/pkg/core/interop_neo.go b/pkg/core/interop_neo.go index da688b9cc..17c100e1c 100644 --- a/pkg/core/interop_neo.go +++ b/pkg/core/interop_neo.go @@ -615,7 +615,7 @@ func (ic *interopContext) assetCreate(v *vm.VM) error { Name: name, Amount: amount, Precision: precision, - Owner: owner, + Owner: *owner, Admin: admin, Issuer: issuer, Expiration: ic.bc.BlockHeight() + DefaultAssetLifetime, diff --git a/pkg/core/interop_neo_test.go b/pkg/core/interop_neo_test.go index c1c378cd9..1fee8ae98 100644 --- a/pkg/core/interop_neo_test.go +++ b/pkg/core/interop_neo_test.go @@ -348,7 +348,7 @@ func createVMAndAssetState(t *testing.T) (*vm.VM, *AssetState, *interopContext) Precision: 1, FeeMode: 1, FeeAddress: randomUint160(), - Owner: &keys.PublicKey{X: big.NewInt(1), Y: big.NewInt(1)}, + Owner: keys.PublicKey{X: big.NewInt(1), Y: big.NewInt(1)}, Admin: randomUint160(), Issuer: randomUint160(), Expiration: 10, diff --git a/pkg/core/transaction/enrollment.go b/pkg/core/transaction/enrollment.go index f61269ba9..0d7c8a0e4 100644 --- a/pkg/core/transaction/enrollment.go +++ b/pkg/core/transaction/enrollment.go @@ -12,12 +12,11 @@ import ( // The way to cancel the registration is: Spend the deposit on the address of the PublicKey. type EnrollmentTX struct { // PublicKey of the validator. - PublicKey *keys.PublicKey + PublicKey keys.PublicKey } // DecodeBinary implements Serializable interface. func (tx *EnrollmentTX) DecodeBinary(r *io.BinReader) { - tx.PublicKey = &keys.PublicKey{} tx.PublicKey.DecodeBinary(r) } diff --git a/pkg/core/transaction/register.go b/pkg/core/transaction/register.go index bba131263..2c7758e84 100644 --- a/pkg/core/transaction/register.go +++ b/pkg/core/transaction/register.go @@ -23,7 +23,7 @@ type RegisterTX struct { Precision uint8 // Public key of the owner. - Owner *keys.PublicKey + Owner keys.PublicKey Admin util.Uint160 } @@ -37,7 +37,6 @@ func (tx *RegisterTX) DecodeBinary(br *io.BinReader) { br.ReadLE(&tx.Amount) br.ReadLE(&tx.Precision) - tx.Owner = &keys.PublicKey{} tx.Owner.DecodeBinary(br) br.ReadBytes(tx.Admin[:]) diff --git a/pkg/core/transaction/register_test.go b/pkg/core/transaction/register_test.go index dd9aa0b02..7d635802d 100644 --- a/pkg/core/transaction/register_test.go +++ b/pkg/core/transaction/register_test.go @@ -21,7 +21,6 @@ func TestRegisterTX(t *testing.T) { Name: "this is some token I created", Amount: util.Fixed8FromInt64(1000000), Precision: 8, - Owner: &keys.PublicKey{}, Admin: someuint160, }, } @@ -58,7 +57,7 @@ func TestDecodeRegisterTXFromRawString(t *testing.T) { assert.Equal(t, "[{\"lang\":\"zh-CN\",\"name\":\"小蚁股\"},{\"lang\":\"en\",\"name\":\"AntShare\"}]", txData.Name) assert.Equal(t, util.Fixed8FromInt64(100000000), txData.Amount) assert.Equal(t, uint8(0), txData.Precision) - assert.Equal(t, &keys.PublicKey{}, txData.Owner) + assert.Equal(t, keys.PublicKey{}, txData.Owner) assert.Equal(t, "Abf2qMs1pzQb8kYk9RuxtUb9jtRKJVuBJt", crypto.AddressFromUint160(txData.Admin)) assert.Equal(t, "c56f33fc6ecfcd0c225c4ab356fee59390af8560be0e930faebe74a6daff7c9b", tx.Hash().StringLE()) diff --git a/pkg/core/util.go b/pkg/core/util.go index 8da60beab..c553f5ef0 100644 --- a/pkg/core/util.go +++ b/pkg/core/util.go @@ -98,7 +98,6 @@ func governingTokenTX() *transaction.Transaction { Name: "[{\"lang\":\"zh-CN\",\"name\":\"小蚁股\"},{\"lang\":\"en\",\"name\":\"AntShare\"}]", Amount: util.Fixed8FromInt64(100000000), Precision: 0, - Owner: &keys.PublicKey{}, Admin: admin, } @@ -121,7 +120,6 @@ func utilityTokenTX() *transaction.Transaction { Name: "[{\"lang\":\"zh-CN\",\"name\":\"小蚁币\"},{\"lang\":\"en\",\"name\":\"AntCoin\"}]", Amount: calculateUtilityAmount(), Precision: 8, - Owner: &keys.PublicKey{}, Admin: admin, } tx := &transaction.Transaction{