X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=gui%2Fqt%2Fpassword_dialog.py;h=95479be5aff63e7ba918f0074a1cf6a0fb0e7e10;hb=f045490597243b056c35b56e0159588123dcbe5f;hp=6f30b176c6b0d3ac961a967af2ed911fb0f85981;hpb=60b6fd399d0af62c043e0a98f9e2ee141c052eb8;p=electrum-nvc.git diff --git a/gui/qt/password_dialog.py b/gui/qt/password_dialog.py index 6f30b17..95479be 100644 --- a/gui/qt/password_dialog.py +++ b/gui/qt/password_dialog.py @@ -75,37 +75,24 @@ def run_password_dialog(self, wallet, parent): if not wallet.seed: QMessageBox.information(parent, _('Error'), _('No seed'), _('OK')) - return + return False, None, None - if not self.exec_(): return + if not self.exec_(): + return False, None, None password = unicode(self.pw.text()) if wallet.use_encryption else None new_password = unicode(self.new_pw.text()) new_password2 = unicode(self.conf_pw.text()) - try: - wallet.get_seed(password) - except Exception: - QMessageBox.warning(parent, _('Error'), _('Incorrect Password'), _('OK')) - return - if new_password != new_password2: QMessageBox.warning(parent, _('Error'), _('Passwords do not match'), _('OK')) # Retry - run_password_dialog(self, wallet, parent) - return - - try: - wallet.update_password(password, new_password) - except Exception: - QMessageBox.warning(parent, _('Error'), _('Failed to update password'), _('OK')) - return + return run_password_dialog(self, wallet, parent) - if new_password: - QMessageBox.information(parent, _('Success'), _('Password was updated successfully'), _('OK')) - else: - QMessageBox.information(parent, _('Success'), _('This wallet is not encrypted'), _('OK')) + if not new_password: + new_password = None + return True, password, new_password @@ -123,7 +110,27 @@ class PasswordDialog(QDialog): def run(self): - run_password_dialog(self, self.wallet, self.parent) + ok, password, new_password = run_password_dialog(self, self.wallet, self.parent) + if not ok: + return + + try: + self.wallet.get_seed(password) + except Exception: + QMessageBox.warning(self.parent, _('Error'), _('Incorrect Password'), _('OK')) + return False, None, None + + try: + self.wallet.update_password(password, new_password) + except: + QMessageBox.warning(self.parent, _('Error'), _('Failed to update password'), _('OK')) + return + + if new_password: + QMessageBox.information(self.parent, _('Success'), _('Password was updated successfully'), _('OK')) + else: + QMessageBox.information(self.parent, _('Success'), _('This wallet is not encrypted'), _('OK')) +