From 38997acef896dc65e92b577d10096b8e5cc1a776 Mon Sep 17 00:00:00 2001 From: Dan Mills Date: Fri, 23 May 2008 23:58:53 -0700 Subject: [PATCH] continue sync of other engines even after one of them throws an exception; use constructor name instead of instanceof to check for array object in modules --- services/sync/modules/service.js | 8 ++++++-- services/sync/modules/util.js | 3 +-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/services/sync/modules/service.js b/services/sync/modules/service.js index 056788b4d919..266f703a7855 100644 --- a/services/sync/modules/service.js +++ b/services/sync/modules/service.js @@ -510,8 +510,12 @@ WeaveSvc.prototype = { }, _syncEngine: function WeaveSvc__syncEngine(engine) { let self = yield; - engine.sync(self.cb); - yield; + try { + engine.sync(self.cb); + yield; + } catch(e) { + this._log.error(e.toString()); + } }, resetServer: function WeaveSync_resetServer(onComplete) { diff --git a/services/sync/modules/util.js b/services/sync/modules/util.js index 873382f63918..d28e7326b288 100644 --- a/services/sync/modules/util.js +++ b/services/sync/modules/util.js @@ -109,8 +109,7 @@ let Utils = { return thing; let ret; - if (thing instanceof Array) { - dump("making a cipy of an array!\n\n"); + if ("Array" == thing.constructor.name) { ret = []; for (let i = 0; i < thing.length; i++) ret.push(Utils.deepCopy(thing[i]));