Bug 1855545: Avoid an infinite loop in ShoppingUtils.init r=Mardak

Differential Revision: https://phabricator.services.mozilla.com/D189420
This commit is contained in:
Jared Hirsch 2023-09-27 20:38:36 +00:00
Родитель f5dcdf7b2d
Коммит 7e70db6c73
1 изменённых файлов: 4 добавлений и 1 удалений

Просмотреть файл

@ -61,9 +61,12 @@ export const ShoppingUtils = {
this.onNimbusUpdate = this.onNimbusUpdate.bind(this);
if (!this.registered) {
// Note (bug 1855545): we must set `this.registered` before calling
// `onUpdate`, as it will immediately invoke `this.onNimbusUpdate`,
// which in turn calls `ShoppingUtils.init`, creating an infinite loop.
this.registered = true;
lazy.NimbusFeatures.shopping2023.onUpdate(this.onNimbusUpdate);
this._updateNimbusVariables();
this.registered = true;
}
if (!this.nimbusEnabled) {