small fixes.
This commit is contained in:
parent
f07486f0f6
commit
cebf2c310a
@ -101,7 +101,7 @@ WalletService.prototype.blockHandler = function(block, connectBlock, callback) {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
var address = self.services.address.getAddressString(script);
|
var address = self.getAddressString(script);
|
||||||
|
|
||||||
if(!address || !self._addressMap[address]) {
|
if(!address || !self._addressMap[address]) {
|
||||||
continue;
|
continue;
|
||||||
@ -144,7 +144,7 @@ WalletService.prototype.blockHandler = function(block, connectBlock, callback) {
|
|||||||
return next();
|
return next();
|
||||||
}
|
}
|
||||||
|
|
||||||
var inputAddress = self.services.address.getAddressString(input.script);
|
var inputAddress = self.getAddressString(input.script);
|
||||||
|
|
||||||
if(!inputAddress || !self._addressMap[inputAddress]) {
|
if(!inputAddress || !self._addressMap[inputAddress]) {
|
||||||
return next();
|
return next();
|
||||||
@ -202,6 +202,32 @@ WalletService.prototype.blockHandler = function(block, connectBlock, callback) {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
WalletService.prototype.getAddressString = function(script, output) {
|
||||||
|
var address = script.toAddress();
|
||||||
|
if(address) {
|
||||||
|
return address.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
var pubkey = script.getPublicKey();
|
||||||
|
if(pubkey) {
|
||||||
|
return pubkey.toString('hex');
|
||||||
|
}
|
||||||
|
} catch(e) {
|
||||||
|
//log.warn('Error getting public key from: ', script.toASM(), script.toHex());
|
||||||
|
// if there is an error, it's because a pubkey can not be extracted from the script
|
||||||
|
// continue on and return null
|
||||||
|
}
|
||||||
|
|
||||||
|
//TODO add back in P2PK, but for this we need to look up the utxo for this script
|
||||||
|
if(output && output.script && output.script.isPublicKeyOut()) {
|
||||||
|
return output.script.getPublicKey().toString('hex');
|
||||||
|
}
|
||||||
|
|
||||||
|
//log.warn('No utxo given for script spending a P2PK: ', script.toASM(), script.toHex());
|
||||||
|
return null;
|
||||||
|
};
|
||||||
|
|
||||||
WalletService.prototype.concurrentBlockHandler = function(block, connectBlock, callback) {
|
WalletService.prototype.concurrentBlockHandler = function(block, connectBlock, callback) {
|
||||||
var self = this;
|
var self = this;
|
||||||
|
|
||||||
@ -260,7 +286,7 @@ WalletService.prototype.concurrentBlockHandler = function(block, connectBlock, c
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
var inputAddress = self._getAddressString(input.script);
|
var inputAddress = self.getAddressString(input.script);
|
||||||
|
|
||||||
if(!inputAddress || !self._addressMap[inputAddress]) {
|
if(!inputAddress || !self._addressMap[inputAddress]) {
|
||||||
continue;
|
continue;
|
||||||
@ -288,10 +314,10 @@ WalletService.prototype._loadAllAddresses = function(callback) {
|
|||||||
|
|
||||||
self._addressMap = {};
|
self._addressMap = {};
|
||||||
|
|
||||||
var start = self._encoding.encodeWalletKey('00');
|
var start = self._encoding.encodeWalletAddressesKey('00');
|
||||||
var end = self._encoding.encodeWalletKey(Array(65).join('f'));
|
var end = self._encoding.encodeWalletAddressesKey(Array(65).join('f'));
|
||||||
|
|
||||||
var stream = self.db.createReadStream({
|
var stream = self.store.createReadStream({
|
||||||
gte: start,
|
gte: start,
|
||||||
lt: end
|
lt: end
|
||||||
});
|
});
|
||||||
@ -328,7 +354,7 @@ WalletService.prototype._loadAllBalances = function(callback) {
|
|||||||
var start = self._encoding.encodeWalletBalanceKey('00');
|
var start = self._encoding.encodeWalletBalanceKey('00');
|
||||||
var end = self._encoding.encodeWalletBalanceKey(Array(65).join('f'));
|
var end = self._encoding.encodeWalletBalanceKey(Array(65).join('f'));
|
||||||
|
|
||||||
var stream = self.db.createReadStream({
|
var stream = self.store.createReadStream({
|
||||||
gte: start,
|
gte: start,
|
||||||
lt: end
|
lt: end
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user