From b287b6d31f1dca35bedd421c940767ec505b0153 Mon Sep 17 00:00:00 2001 From: Nick Klockenga Date: Tue, 19 Oct 2021 15:17:13 -0400 Subject: [PATCH 1/3] add another bitcoin output descriptor regex parse --- src/seedsigner/controller.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/seedsigner/controller.py b/src/seedsigner/controller.py index 80debdba..b2c8fe19 100644 --- a/src/seedsigner/controller.py +++ b/src/seedsigner/controller.py @@ -836,12 +836,17 @@ class Controller(Singleton): if decoder2.isComplete() and decoder2.isWalletDescriptor(): desc_str = decoder2.getWalletDescriptor() + desc_str = desc_str.replace("\n","").replace(" ","") try: - if len(re.findall(r'\[([0-9,a-f,A-F]+?)(\/[0-9,\/,h\']+?)\].*?(\/0\/\*)', desc_str)) > 0: + if len(re.findall (r'\[([0-9,a-f,A-F]+?)(\/[0-9,\/,h\']+?)\].*?(\/0\/\*)', desc_str)) > 0: p = re.compile(r'(\[[0-9,a-f,A-F]+?\/[0-9,\/,h\']+?\].*?)(\/0\/\*)') desc_str = p.sub(r'\1/{0,1}/*', desc_str) + elif len(re.findall (r'(\[[0-9,a-f,A-F]+?\/[0-9,\/,h,\']+?\][a-z,A-Z,0-9]*?)([\,,\)])', desc_str)) > 0: + p = re.compile(r'(\[[0-9,a-f,A-F]+?\/[0-9,\/,h,\']+?\][a-z,A-Z,0-9]*?)([\,,\)])') + desc_str = p.sub(r'\1/{0,1}/*\2', desc_str) except: - desc_str = decoder2.getWalletDescriptor() + desc_str = decoder2.getWalletDescriptor() + print(desc_str) desc = Descriptor.from_string(desc_str) else: return Path.MAIN_MENU From 2612cda43eb97c139e5dac5ba4e466e52425d2bd Mon Sep 17 00:00:00 2001 From: Nick Klockenga Date: Tue, 19 Oct 2021 15:24:20 -0400 Subject: [PATCH 2/3] correct default camera rotation back to 0 degrees --- src/settings.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/settings.ini b/src/settings.ini index 2a37f377..2aeffa0d 100644 --- a/src/settings.ini +++ b/src/settings.ini @@ -6,7 +6,7 @@ persistent_settings = False [display] text_color = ORANGE qr_background_color = FFFFFF -camera_rotation = 180 +camera_rotation = 0 [wallet] network = main From f39961d3e1bdd672dd0f23f20ec86b3fc4eb4974 Mon Sep 17 00:00:00 2001 From: Nick Klockenga Date: Tue, 19 Oct 2021 15:34:51 -0400 Subject: [PATCH 3/3] fix when descriptor has newlines/whitespace --- src/seedsigner/models/decode_qr.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/seedsigner/models/decode_qr.py b/src/seedsigner/models/decode_qr.py index 9d07ed78..07f90b9c 100644 --- a/src/seedsigner/models/decode_qr.py +++ b/src/seedsigner/models/decode_qr.py @@ -255,10 +255,11 @@ class DecodeQR: return QRType.PSBTBASE64 # Wallet Descriptor - elif re.search(r'^p(\d+)of(\d+) ', s, re.IGNORECASE): + desc_str = s.replace("\n","").replace(" ","") + if re.search(r'^p(\d+)of(\d+) ', s, re.IGNORECASE): # when not a SPECTER Base64 PSBT from above, assume it's json return QRType.SPECTERWALLETQR - elif re.search(r'^\{\"label\".*\"descriptor\"\:.*', s, re.IGNORECASE): + elif re.search(r'^\{\"label\".*\"descriptor\"\:.*', desc_str, re.IGNORECASE): # if json starting with label and contains descriptor, assume specter wallet json return QRType.SPECTERWALLETQR