Merge pull request #17215 from mozilla/fix-potential-webchannel-race

bug(settings): Make sure event handler is attached before message is sent
This commit is contained in:
Dan Schomburg 2024-07-10 15:41:19 -07:00 коммит произвёл GitHub
Родитель 91f73407e3 bb1c4ad743
Коммит 7914defaeb
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
1 изменённых файлов: 1 добавлений и 2 удалений

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

@ -349,8 +349,6 @@ export class Firefox extends EventTarget {
async fxaCanLinkAccount(
options: FxACanLinkAccount
): Promise<FxACanLinkAccountResponse> {
this.send(FirefoxCommand.CanLinkAccount, options);
return new Promise((resolve) => {
const eventHandler = (event: Event) => {
const firefoxEvent = event as FirefoxEvent;
@ -362,6 +360,7 @@ export class Firefox extends EventTarget {
resolve(detail.message?.data as FxACanLinkAccountResponse);
};
window.addEventListener('WebChannelMessageToContent', eventHandler);
this.send(FirefoxCommand.CanLinkAccount, options);
});
}