You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Noticed something in the method Part 4: FindUnspentTransactions. Maybe I'm missing something obvious but can someone please correct me if I'm wrong.
In the block of code below, shouldn't we get the spent outputs before we loop through tx.Vout? Otherwise spentTXOs[txID] will always be nil?
for _, tx := range block.Transactions {
txID := hex.EncodeToString(tx.ID)
Outputs:
for outIdx, out := range tx.Vout {
// Was the output spent?
if spentTXOs[txID] != nil {
for _, spentOut := range spentTXOs[txID] {
if spentOut == outIdx {
continue Outputs
}
}
}
if out.CanBeUnlockedWith(address) {
unspentTXs = append(unspentTXs, *tx)
}
}
if tx.IsCoinbase() == false {
for _, in := range tx.Vin {
if in.CanUnlockOutputWith(address) {
inTxID := hex.EncodeToString(in.Txid)
spentTXOs[inTxID] = append(spentTXOs[inTxID], in.Vout)
}
}
}
}
The text was updated successfully, but these errors were encountered:
Cijin
changed the title
Might not be an issue, have a question
Might not be an issue, have a question (Part 4)
Mar 28, 2022
Noticed something in the method
Part 4: FindUnspentTransactions
. Maybe I'm missing something obvious but can someone please correct me if I'm wrong.In the block of code below, shouldn't we get the spent outputs before we loop through
tx.Vout
? OtherwisespentTXOs[txID]
will always benil
?The text was updated successfully, but these errors were encountered: