commit a38fadbba8c4869b4fed6f9055d8733d3d0829bb
parent 1fe51c81da43c6b51f03019bc4726a1c2f111a2c
Author: Harshit <hsohaney@mozilla.com>
Date: Wed, 17 Dec 2025 20:57:10 +0000
Bug 2005845 - Add a check to ensure that the spotlight is loaded from the about page. r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D276562
Diffstat:
1 file changed, 14 insertions(+), 0 deletions(-)
diff --git a/browser/components/backup/actors/BackupUIParent.sys.mjs b/browser/components/backup/actors/BackupUIParent.sys.mjs
@@ -7,6 +7,7 @@ const lazy = {};
ChromeUtils.defineESModuleGetters(lazy, {
BackupService: "resource:///modules/backup/BackupService.sys.mjs",
ERRORS: "chrome://browser/content/backup/backup-constants.mjs",
+ E10SUtils: "resource://gre/modules/E10SUtils.sys.mjs",
});
ChromeUtils.defineLazyGetter(lazy, "logConsole", function () {
@@ -121,6 +122,19 @@ export class BackupUIParent extends JSWindowActorParent {
* Returns either a success object, a file details object, or null.
*/
async receiveMessage(message) {
+ // The backup spotlights can be embedded in less privileged content pages, so let's
+ // make sure that any messages from content are coming from the privileged
+ // about content process type
+ if (
+ !this.browsingContext.currentWindowGlobal.isInProcess &&
+ this.browsingContext.currentRemoteType !=
+ lazy.E10SUtils.PRIVILEGEDABOUT_REMOTE_TYPE
+ ) {
+ throw new Error(
+ "BackupUIParent: received message from the wrong content process type."
+ );
+ }
+
if (message.name == "RequestState") {
this.sendState();
} else if (message.name == "TriggerCreateBackup") {