TransactionBuilder: less exits

This commit is contained in:
Daniel Cousens 2016-09-27 21:08:48 +10:00
parent 83b2bb5d6a
commit 6826aa312d

View file

@ -144,29 +144,30 @@ function extractFromOutputScript (outputScript, kpPubKey) {
var scriptType = bscript.classifyOutput(outputScript)
var outputScriptChunks = bscript.decompile(outputScript)
var pubKeys
switch (scriptType) {
case 'pubkeyhash':
var pkh1 = outputScriptChunks[2]
var pkh2 = bcrypto.hash160(kpPubKey)
if (!bufferEquals(pkh1, pkh2)) throw new Error('privateKey cannot sign for this input')
return {
pubKeys: [kpPubKey],
scriptType: scriptType
}
pubKeys = [kpPubKey]
break
case 'pubkey':
return {
pubKeys: outputScriptChunks.slice(0, 1),
scriptType: scriptType
}
pubKeys = outputScriptChunks.slice(0, 1)
break
case 'multisig':
return {
pubKeys: outputScriptChunks.slice(1, -2),
scriptType: scriptType
}
pubKeys = outputScriptChunks.slice(1, -2)
break
default: return
}
return {
pubKeys: pubKeys,
scriptType: scriptType
}
}