diff --git a/dom/base/DOMRequestHelper.jsm b/dom/base/DOMRequestHelper.jsm index 869a21025a56..0184999b9419 100644 --- a/dom/base/DOMRequestHelper.jsm +++ b/dom/base/DOMRequestHelper.jsm @@ -52,7 +52,8 @@ DOMRequestIpcHelper.prototype = { * queryInterface method and adds at least one weak listener to the Message * Manager MUST implement Ci.nsISupportsWeakReference. */ - QueryInterface: XPCOMUtils.generateQI([Ci.nsISupportsWeakReference]), + QueryInterface: XPCOMUtils.generateQI([Ci.nsISupportsWeakReference, + Ci.nsIObserver]), /** * 'aMessages' is expected to be an array of either: diff --git a/dom/messages/SystemMessageManager.js b/dom/messages/SystemMessageManager.js index abc5b2f31bb9..44e6a93e7afd 100644 --- a/dom/messages/SystemMessageManager.js +++ b/dom/messages/SystemMessageManager.js @@ -284,6 +284,9 @@ SystemMessageManager.prototype = { if (aTopic === kSystemMessageInternalReady) { this._registerManifest(); } + + // Call the DOMRequestIpcHelper.observe method. + this.__proto__.__proto__.observe.call(this, aSubject, aTopic, aData); }, _registerManifest: function sysMessMgr_registerManifest() {