Skip to content

Commit b885a6f

Browse files
committed
Bug 1873019 - Remove dependency from useEffect in LanguageSwitcher causing infinite re-renders r=omc-reviewers,Mardak,aminomancer
Temporarily remove screenIndex dependency from useEffect which is causing infinite re-renders and ultimately an unresponsive browser (likely because every time filtered screen is changing, it updates [screens as well](https://searchfox.org/mozilla-central/source/browser/components/aboutwelcome/content-src/components/MultiStageAboutWelcome.jsx#206) ). This is a quick fix to get into beta uplift. Differential Revision: https://phabricator.services.mozilla.com/D198302
1 parent 761ca4c commit b885a6f

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

browser/components/aboutwelcome/content-src/components/LanguageSwitcher.jsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,12 +134,13 @@ export function useLanguageSwitcher(
134134
setLanguageFilteredScreens(screens);
135135
}
136136
},
137+
// Removing screenIndex as a dependency as it's causing infinite re-renders (1873019)
138+
// eslint-disable-next-line react-hooks/exhaustive-deps
137139
[
138140
appAndSystemLocaleInfo?.matchType,
139141
languageMismatchScreenIndex,
140142
negotiatedLanguage,
141143
screen,
142-
screenIndex,
143144
screens,
144145
setScreenIndex,
145146
]

browser/components/aboutwelcome/content/aboutwelcome.bundle.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1557,7 +1557,10 @@ function useLanguageSwitcher(appAndSystemLocaleInfo, screens, screenIndex, setSc
15571557
} else {
15581558
setLanguageFilteredScreens(screens);
15591559
}
1560-
}, [appAndSystemLocaleInfo?.matchType, languageMismatchScreenIndex, negotiatedLanguage, screen, screenIndex, screens, setScreenIndex]);
1560+
},
1561+
// Removing screenIndex as a dependency as it's causing infinite re-renders (1873019)
1562+
// eslint-disable-next-line react-hooks/exhaustive-deps
1563+
[appAndSystemLocaleInfo?.matchType, languageMismatchScreenIndex, negotiatedLanguage, screen, screens, setScreenIndex]);
15611564
return {
15621565
negotiatedLanguage,
15631566
langPackInstallPhase,

0 commit comments

Comments
 (0)