From 75636bbddedaabdb1233f4570bc3ca331c381240 Mon Sep 17 00:00:00 2001 From: kdmukai Date: Tue, 9 Jul 2024 08:13:49 -0500 Subject: [PATCH] Restore fix for op_code support --- src/seedsigner/models/psbt_parser.py | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/src/seedsigner/models/psbt_parser.py b/src/seedsigner/models/psbt_parser.py index b0af2ff8..2846e6b5 100644 --- a/src/seedsigner/models/psbt_parser.py +++ b/src/seedsigner/models/psbt_parser.py @@ -262,21 +262,22 @@ class PSBTParser(): # expected multisig script = None - if "p2wsh" in script_type and scope.witness_script is not None: - script = scope.witness_script + if script_type: + if "p2wsh" in script_type and scope.witness_script is not None: + script = scope.witness_script - elif "p2sh" in script_type and scope.redeem_script is not None: - script = scope.redeem_script + elif "p2sh" in script_type and scope.redeem_script is not None: + script = scope.redeem_script - if script is not None: - m, n, pubkeys = PSBTParser._parse_multisig(script) - - # check pubkeys are derived from cosigners - try: - cosigners = PSBTParser._get_cosigners(pubkeys, scope.bip32_derivations, xpubs) - policy.update({"m": m, "n": n, "cosigners": cosigners}) - except: - policy.update({"m": m, "n": n}) + if script is not None: + m, n, pubkeys = PSBTParser._parse_multisig(script) + + # check pubkeys are derived from cosigners + try: + cosigners = PSBTParser._get_cosigners(pubkeys, scope.bip32_derivations, xpubs) + policy.update({"m": m, "n": n, "cosigners": cosigners}) + except: + policy.update({"m": m, "n": n}) return policy