report errors in multi sync, make sure to terminate early

This commit is contained in:
Damien Elmes 2010-12-07 17:06:42 +09:00
parent ccc91b364e
commit 772f6d7776

View file

@ -109,10 +109,8 @@ sync was aborted. Please report this error.""")
def syncAllDecks(self): def syncAllDecks(self):
decks = self.parent.syncDecks decks = self.parent.syncDecks
for d in decks: for d in decks:
try: if not self.syncDeck(deck=d):
self.syncDeck(deck=d) break
except SyncError, e:
return
self.setStatus(_("Sync Finished."), 0) self.setStatus(_("Sync Finished."), 0)
time.sleep(1) time.sleep(1)
self.emit(SIGNAL("syncFinished")) self.emit(SIGNAL("syncFinished"))
@ -165,7 +163,8 @@ sync was aborted. Please report this error.""")
proxy.createDeck(syncName) proxy.createDeck(syncName)
deckCreated = True deckCreated = True
except SyncError, e: except SyncError, e:
return self.error(e) self.error(e)
return
# check conflicts # check conflicts
proxy.deckName = syncName proxy.deckName = syncName
remoteMod = proxy.modified() remoteMod = proxy.modified()
@ -263,6 +262,7 @@ sync was aborted. Please report this error.""")
else: else:
time.sleep(0.25) time.sleep(0.25)
self.emit(SIGNAL("syncFinished")) self.emit(SIGNAL("syncFinished"))
return True
except Exception, e: except Exception, e:
self.ok = False self.ok = False
#traceback.print_exc() #traceback.print_exc()
@ -272,7 +272,6 @@ sync was aborted. Please report this error.""")
err = `getattr(e, 'data', None) or e` err = `getattr(e, 'data', None) or e`
self.setStatus(_("Syncing failed: %(a)s") % { self.setStatus(_("Syncing failed: %(a)s") % {
'a': err}) 'a': err})
if not deck:
self.error(e) self.error(e)
# Downloading personal decks # Downloading personal decks