From ed17203a5f179a475c48e354afbbe69310fad050 Mon Sep 17 00:00:00 2001 From: softsimon Date: Wed, 3 Feb 2021 13:11:14 +0700 Subject: [PATCH] bitcoind: Parse witness scripts from P2SH transactions. fixes #323 --- backend/src/api/bitcoin/bitcoin-api.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/backend/src/api/bitcoin/bitcoin-api.ts b/backend/src/api/bitcoin/bitcoin-api.ts index b5e3843db..919b06092 100644 --- a/backend/src/api/bitcoin/bitcoin-api.ts +++ b/backend/src/api/bitcoin/bitcoin-api.ts @@ -292,6 +292,10 @@ class BitcoinApi implements AbstractBitcoinApi { if (vin.prevout.scriptpubkey_type === 'p2sh') { const redeemScript = vin.scriptsig_asm.split(' ').reverse()[0]; vin.inner_redeemscript_asm = this.convertScriptSigAsm(bitcoinjs.script.toASM(Buffer.from(redeemScript, 'hex'))); + if (vin.witness && vin.witness.length > 2) { + const witnessScript = vin.witness[vin.witness.length - 1]; + vin.inner_witnessscript_asm = this.convertScriptSigAsm(bitcoinjs.script.toASM(Buffer.from(witnessScript, 'hex'))); + } } if (vin.prevout.scriptpubkey_type === 'v0_p2wsh' && vin.witness) {