diff --git a/vms/platformvm/txs/executor/standard_tx_executor.go b/vms/platformvm/txs/executor/standard_tx_executor.go index aa1a91df439..f01e493730b 100644 --- a/vms/platformvm/txs/executor/standard_tx_executor.go +++ b/vms/platformvm/txs/executor/standard_tx_executor.go @@ -554,6 +554,12 @@ func (e *StandardTxExecutor) ConvertSubnetTx(tx *txs.ConvertSubnetTx) error { ) for i, vdr := range tx.Validators { vdr := vdr + + nodeID, err := ids.ToNodeID(vdr.NodeID) + if err != nil { + return err + } + remainingBalanceOwner, err := txs.Codec.Marshal(txs.CodecVersion, &vdr.RemainingBalanceOwner) if err != nil { return err @@ -566,7 +572,7 @@ func (e *StandardTxExecutor) ConvertSubnetTx(tx *txs.ConvertSubnetTx) error { sov := state.SubnetOnlyValidator{ ValidationID: tx.Subnet.Append(uint32(i)), SubnetID: tx.Subnet, - NodeID: vdr.NodeID, + NodeID: nodeID, PublicKey: bls.PublicKeyToUncompressedBytes(vdr.Signer.Key()), RemainingBalanceOwner: remainingBalanceOwner, DeactivationOwner: deactivationOwner, @@ -597,7 +603,7 @@ func (e *StandardTxExecutor) ConvertSubnetTx(tx *txs.ConvertSubnetTx) error { } subnetConversionData.Validators[i] = message.SubnetConversionValidatorData{ - NodeID: vdr.NodeID.Bytes(), + NodeID: vdr.NodeID, BLSPublicKey: vdr.Signer.PublicKey, Weight: vdr.Weight, }