From b3b91dc18108d4ae7f19baf648407d3f6759f6bb Mon Sep 17 00:00:00 2001 From: Edward Lee Date: Tue, 4 May 2010 12:15:43 -0700 Subject: [PATCH] Bug 561480 - Errors when loading WeaveCrypto.js on older platforms [r=mconnor] Only register WeaveCrypto if it was able to import scripts. --- services/crypto/WeaveCrypto.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/services/crypto/WeaveCrypto.js b/services/crypto/WeaveCrypto.js index 831db5ca2e2d..52aa4ed24ffe 100644 --- a/services/crypto/WeaveCrypto.js +++ b/services/crypto/WeaveCrypto.js @@ -40,8 +40,11 @@ const Ci = Components.interfaces; const Cr = Components.results; Components.utils.import("resource://gre/modules/XPCOMUtils.jsm"); -Components.utils.import("resource://gre/modules/Services.jsm"); -Components.utils.import("resource://gre/modules/ctypes.jsm"); +try { + Components.utils.import("resource://gre/modules/Services.jsm"); + Components.utils.import("resource://gre/modules/ctypes.jsm"); +} +catch(ex) {} function WeaveCrypto() { this.init(); @@ -1120,7 +1123,7 @@ WeaveCrypto.prototype = { } }; -let component = [WeaveCrypto]; +let component = Services == null || ctypes == null ? [] : [WeaveCrypto]; function NSGetModule (compMgr, fileSpec) { return XPCOMUtils.generateModule(component); }