fix bugs on wallet creation
authorThomasV <thomasv@gitorious>
Thu, 1 May 2014 16:58:24 +0000 (18:58 +0200)
committerThomasV <thomasv@gitorious>
Thu, 1 May 2014 16:58:24 +0000 (18:58 +0200)
gui/qt/password_dialog.py
lib/wallet.py

index da4e331..4b2bfd5 100644 (file)
@@ -73,7 +73,7 @@ def make_password_dialog(self, wallet, msg):
 
 def run_password_dialog(self, wallet, parent):
         
-    if wallet.is_watching_only():
+    if wallet and wallet.is_watching_only():
         QMessageBox.information(parent, _('Error'), _('This is a watching-only wallet'), _('OK'))
         return False, None, None
 
index ea3c6c9..407cd41 100644 (file)
@@ -1150,6 +1150,22 @@ class Deterministic_Wallet(Abstract_Wallet):
     def check_password(self, password):
         self.get_seed(password)
 
+    def add_seed(self, seed, password):
+        if self.seed: 
+            raise Exception("a seed exists")
+        
+        self.seed_version, self.seed = self.prepare_seed(seed)
+        if password: 
+            self.seed = pw_encode( self.seed, password)
+            self.use_encryption = True
+        else:
+            self.use_encryption = False
+
+        self.storage.put('seed', self.seed, True)
+        self.storage.put('seed_version', self.seed_version, True)
+        self.storage.put('use_encryption', self.use_encryption,True)
+        self.create_master_keys(password)
+
     def get_seed(self, password):
         s = pw_decode(self.seed, password)
         seed = mnemonic_to_seed(s,'').encode('hex')
@@ -1389,22 +1405,6 @@ class NewWallet(Deterministic_Wallet):
         xpriv = pw_decode( k, password)
         return xpriv
 
-    def add_seed(self, seed, password):
-        if self.seed: 
-            raise Exception("a seed exists")
-        
-        self.seed_version, self.seed = self.prepare_seed(seed)
-        if password: 
-            self.seed = pw_encode( self.seed, password)
-            self.use_encryption = True
-        else:
-            self.use_encryption = False
-
-        self.storage.put('seed', self.seed, True)
-        self.storage.put('seed_version', self.seed_version, True)
-        self.storage.put('use_encryption', self.use_encryption,True)
-        self.create_master_keys(password)
-
 
     def create_watching_only_wallet(self, xpub):
         self.storage.put('seed_version', self.seed_version, True)