X-Git-Url: http://git.osdn.net/view?p=bytom%2Fvapor.git;a=blobdiff_plain;f=toolbar%2Ffederation%2Fsynchron%2Fsidechain_keeper.go;h=f576e62f96b39ec903a1f7d959ff4e9adb08d3c3;hp=9cb22be253e0d294f03ce1f99721b8ac9a966642;hb=6909cc8cbe27380866b3de360b7c3cf41b567f5b;hpb=b12601e37a15cd8e8c13a356d92e3748ea051339 diff --git a/toolbar/federation/synchron/sidechain_keeper.go b/toolbar/federation/synchron/sidechain_keeper.go index 9cb22be2..f576e62f 100644 --- a/toolbar/federation/synchron/sidechain_keeper.go +++ b/toolbar/federation/synchron/sidechain_keeper.go @@ -26,6 +26,7 @@ type sidechainKeeper struct { node *service.Node assetStore *database.AssetStore chainID uint64 + netParams consensus.Params } func NewSidechainKeeper(db *gorm.DB, assetStore *database.AssetStore, cfg *config.Config) *sidechainKeeper { @@ -40,6 +41,7 @@ func NewSidechainKeeper(db *gorm.DB, assetStore *database.AssetStore, cfg *confi node: service.NewNode(cfg.Sidechain.Upstream), assetStore: assetStore, chainID: chain.ID, + netParams: consensus.NetParams[cfg.Network], } } @@ -61,7 +63,7 @@ func (s *sidechainKeeper) Run() { } func (s *sidechainKeeper) createCrossChainReqs(db *gorm.DB, crossTransactionID uint64, tx *types.Tx, statusFail bool) error { - fromAddress := common.ProgToAddress(tx.Inputs[0].ControlProgram(), &consensus.MainNetParams) + fromAddress := common.ProgToAddress(tx.Inputs[0].ControlProgram(), &s.netParams) for i, rawOutput := range tx.Outputs { if rawOutput.OutputType() != types.CrossChainOutputType { continue @@ -84,7 +86,7 @@ func (s *sidechainKeeper) createCrossChainReqs(db *gorm.DB, crossTransactionID u AssetAmount: rawOutput.OutputCommitment().AssetAmount.Amount, Script: hex.EncodeToString(prog), FromAddress: fromAddress, - ToAddress: common.ProgToAddress(prog, consensus.BytomMainNetParams(&consensus.ActiveNetParams)), + ToAddress: common.ProgToAddress(prog, consensus.BytomMainNetParams(&s.netParams)), } if err := db.Create(req).Error; err != nil {