coins: minor.

This commit is contained in:
Christopher Jeffrey 2016-12-10 22:04:19 -08:00
parent f3801fa8a7
commit c681b75b7b
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD
3 changed files with 14 additions and 7 deletions

View File

@ -17,7 +17,7 @@ var btcutils = require('../btc/utils');
var Locker = require('../utils/locker'); var Locker = require('../utils/locker');
var LRU = require('../utils/lru'); var LRU = require('../utils/lru');
var ChainEntry = require('./chainentry'); var ChainEntry = require('./chainentry');
var CoinView = require('./coinview'); var CoinView = require('../coins/coinview');
var assert = require('assert'); var assert = require('assert');
var errors = require('../btc/errors'); var errors = require('../btc/errors');
var VerifyError = errors.VerifyError; var VerifyError = errors.VerifyError;

View File

@ -17,9 +17,9 @@ var Amount = require('../btc/amount');
var encoding = require('../utils/encoding'); var encoding = require('../utils/encoding');
var co = require('../utils/co'); var co = require('../utils/co');
var Network = require('../protocol/network'); var Network = require('../protocol/network');
var CoinView = require('./coinview'); var CoinView = require('../coins/coinview');
var Coins = require('./coins'); var Coins = require('../coins/coins');
var UndoCoins = require('./undocoins'); var UndoCoins = require('../coins/undocoins');
var LDB = require('../db/ldb'); var LDB = require('../db/ldb');
var layout = require('./layout'); var layout = require('./layout');
var LRU = require('../utils/lru'); var LRU = require('../utils/lru');

View File

@ -115,6 +115,9 @@ CoinView.prototype.addCoin = function addCoin(coin) {
this.add(coins); this.add(coins);
} }
if (coin.script.isUnspendable())
return;
if (!coins.has(coin.index)) if (!coins.has(coin.index))
coins.addCoin(coin); coins.addCoin(coin);
}; };
@ -137,6 +140,9 @@ CoinView.prototype.addOutput = function addOutput(hash, index, output) {
this.add(coins); this.add(coins);
} }
if (output.script.isUnspendable())
return;
if (!coins.has(index)) if (!coins.has(index))
coins.addOutput(index, output); coins.addOutput(index, output);
}; };
@ -383,18 +389,19 @@ CoinView.prototype.toArray = function toArray() {
*/ */
CoinView.prototype.toFast = function toFast(bw, tx) { CoinView.prototype.toFast = function toFast(bw, tx) {
var i, input, coins, entry; var i, input, prevout, coins, entry;
for (i = 0; i < tx.inputs.length; i++) { for (i = 0; i < tx.inputs.length; i++) {
input = tx.inputs[i]; input = tx.inputs[i];
coins = this.get(input.prevout.hash); prevout = input.prevout;
coins = this.get(prevout.hash);
if (!coins) { if (!coins) {
bw.writeU8(0); bw.writeU8(0);
continue; continue;
} }
entry = coins.get(input.prevout.index); entry = coins.get(prevout.index);
if (!entry) { if (!entry) {
bw.writeU8(0); bw.writeU8(0);