fix wallet bug in labels plugin

This commit is contained in:
ThomasV 2015-03-14 08:52:21 +01:00
parent a4cb70649d
commit 5918bac5cb
1 changed files with 10 additions and 3 deletions

View File

@ -225,6 +225,7 @@ class Plugin(BasePlugin):
if "error" in response:
raise BaseException(_("Could not sync labels: %s" % response["error"]))
result = {}
for label in response:
try:
key = self.decode(label["external_id"])
@ -240,8 +241,14 @@ class Plugin(BasePlugin):
except:
print_error('error: no json', key)
continue
if force or not self.wallet.labels.get(key):
self.wallet.labels[key] = value
self.wallet.storage.put('labels', self.wallet.labels)
result[key] = value
wallet = self.wallet
if not wallet:
return
for key, value in result.items():
if force or not wallet.labels.get(key):
wallet.labels[key] = value
wallet.storage.put('labels', wallet.labels)
print_error("received %d labels"%len(response))
self.window.labelsChanged.emit()