From 746f85556304bd3efb30c93a824ab485719eeead Mon Sep 17 00:00:00 2001 From: logonoff Date: Tue, 28 Apr 2026 11:12:11 -0400 Subject: [PATCH] OCPBUGS-79067: Fix infinite re-render loop when switching language to English LanguageDropdown and DetectLanguage both called useLanguage, creating duplicate i18n event listeners and effect cycles. When switching back to English via the ConfigMap code path, the cascading re-renders from both instances exceeded React's maximum update depth. Remove useLanguage from LanguageDropdown since DetectLanguage already handles global i18n synchronization. --- .../components/user-preferences/language/LanguageDropdown.tsx | 3 --- 1 file changed, 3 deletions(-) diff --git a/frontend/packages/console-app/src/components/user-preferences/language/LanguageDropdown.tsx b/frontend/packages/console-app/src/components/user-preferences/language/LanguageDropdown.tsx index 0369637d955..c3332852a3c 100644 --- a/frontend/packages/console-app/src/components/user-preferences/language/LanguageDropdown.tsx +++ b/frontend/packages/console-app/src/components/user-preferences/language/LanguageDropdown.tsx @@ -12,7 +12,6 @@ import { import { useTranslation } from 'react-i18next'; import { useTelemetry } from '@console/shared/src/hooks/useTelemetry'; import { supportedLocales } from './const'; -import { useLanguage } from './useLanguage'; import { PREFERRED_LANGUAGE_USER_PREFERENCE_KEY, usePreferredLanguage, @@ -60,8 +59,6 @@ const LanguageDropdown: FC = () => { } }; - useLanguage(preferredLanguage, preferredLanguageLoaded); // sync the preferred language with local storage and set the console language - useEffect(() => { if (preferredLanguageLoaded) { setIsUsingDefault(!preferredLanguage);