refactor changes

This commit is contained in:
Manuel Araoz 2014-10-01 13:31:32 -03:00
parent 693f2aac7b
commit c9c49da658
2 changed files with 14 additions and 13 deletions

View File

@ -189,7 +189,13 @@ Address.fromPubkeyHashScriptSig = function(scriptSig, network) {
//extract an address from scriptSig //extract an address from scriptSig
Address.fromScriptSig = function(scriptSig, network) { Address.fromScriptSig = function(scriptSig, network) {
if (typeof scriptSig === 'string') { if (typeof scriptSig === 'string') {
scriptSig = new Script(new Buffer(scriptSig, 'hex')); try {
var scriptSigBuf = new Buffer(scriptSig, 'hex')
} catch(err) {
// Error: Invalid public key
return null;
}
scriptSig = new Script(scriptSigBuf);
} }
if (!network) if (!network)
network = 'livenet'; network = 'livenet';

View File

@ -633,19 +633,19 @@ Transaction.prototype.getReceivingAddresses = function(networkName) {
ret = []; ret = [];
for (var i = 0; i<this.outs.length; i++) { for (var i = 0; i<this.outs.length; i++) {
var o = this.outs[i]; var o = this.outs[i];
var tmp = Address.fromScriptPubKey(o.getScript(), networkName); var addrs = Address.fromScriptPubKey(o.getScript(), networkName);
if (typeof tmp[0] !== 'undefined') { if (typeof addrs[0] !== 'undefined') {
var addr = tmp[0].toString(); ret.push(addrs[0].toString());
ret.push(addr);
} else { } else {
ret.push(null); ret.push(null);
} }
} }
return ret; return ret;
}; };
Transaction.prototype.getSendingAddresses = function(networkName) { Transaction.prototype.getSendingAddresses = function(networkName) {
var ret = [];
if (!networkName) networkName = 'livenet'; if (!networkName) networkName = 'livenet';
var ret = [];
for (var i = 0; i<this.ins.length; i++) { for (var i = 0; i<this.ins.length; i++) {
var input = this.ins[i]; var input = this.ins[i];
var scriptSig = input.getScript(); var scriptSig = input.getScript();
@ -653,13 +653,8 @@ Transaction.prototype.getSendingAddresses = function(networkName) {
ret.push(null); ret.push(null);
continue; continue;
} }
try { var addr = Address.fromScriptSig(scriptSig, networkName);
var addr = Address.fromScriptSig(scriptSig, networkName); ret.push(addr?addr.toString():null);
ret.push(addr?addr.toString():null);
} catch(err) {
// Error: Invalid public key
ret.push(null);
}
} }
return ret; return ret;
}; };