From b81029bcd8d163e54b418607dfb6249ea1cee0d9 Mon Sep 17 00:00:00 2001 From: lufte Date: Mon, 12 Aug 2019 17:15:59 -0300 Subject: [PATCH] Don't execute pass if it's not needed --- misc/userscripts/qute-pass | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/misc/userscripts/qute-pass b/misc/userscripts/qute-pass index 838b91b4a..018b49884 100755 --- a/misc/userscripts/qute-pass +++ b/misc/userscripts/qute-pass @@ -174,7 +174,17 @@ def main(arguments): if not selection: return ExitCodes.SUCCESS - secret = pass_(selection, arguments.io_encoding) + # If username-target is path and user asked for username-only, we don't need to run pass + secret = None + if not (arguments.username_target == 'path' and arguments.username_only): + secret = pass_(selection, arguments.io_encoding) + + # Match password + match = re.match(arguments.password_pattern, secret) + if not match: + stderr('Failed to match password pattern on secret!') + return ExitCodes.COULD_NOT_MATCH_PASSWORD + password = match.group(1) # Match username target = selection if arguments.username_target == 'path' else secret @@ -184,13 +194,6 @@ def main(arguments): return ExitCodes.COULD_NOT_MATCH_USERNAME username = match.group(1) - # Match password - match = re.match(arguments.password_pattern, secret) - if not match: - stderr('Failed to match password pattern on secret!') - return ExitCodes.COULD_NOT_MATCH_PASSWORD - password = match.group(1) - if arguments.username_only: fake_key_raw(username) elif arguments.password_only: