func isTransactionNoBtmInput(tx *types.Tx) bool {
for _, input := range tx.TxData.Inputs {
+ switch input.InputType() {
+ case types.CrossChainInputType:
+ return false
+ }
if input.AssetID() == *consensus.BTMAssetID {
return false
}
}
+
return true
}
func isTransactionZeroOutput(tx *types.Tx) bool {
for _, output := range tx.TxData.Outputs {
- value := output.AssetAmount()
- if value.Amount == uint64(0) {
+ if value := output.AssetAmount(); value.Amount == uint64(0) {
return true
}
}
txD.Added = time.Now()
tp.pool[tx.ID] = txD
for _, id := range tx.ResultIds {
- var assetID bc.AssetID
outputEntry, err := tx.Entry(*id)
if err != nil {
return err
}
+
+ var assetID bc.AssetID
switch output := outputEntry.(type) {
case *bc.IntraChainOutput:
assetID = *output.Source.Value.AssetId