Add exception handling for creating CultureInfo (#3637)
authorhjhun <36876573+hjhun@users.noreply.github.com>
Tue, 5 Oct 2021 22:53:59 +0000 (07:53 +0900)
committerGitHub <noreply@github.com>
Tue, 5 Oct 2021 22:53:59 +0000 (07:53 +0900)
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
src/Tizen.Applications.Common/Tizen.Applications/CoreApplication.cs

index dd23082..487cb89 100644 (file)
@@ -279,12 +279,28 @@ namespace Tizen.Applications
 
         private void ChangeCurrentCultureInfo(string locale)
         {
-            CultureInfo.CurrentCulture = ConvertCultureInfo(locale);
+            CultureInfo cultureInfo = ConvertCultureInfo(locale);
+            if (cultureInfo != null)
+            {
+                CultureInfo.CurrentCulture = cultureInfo;
+            }
+            else
+            {
+                Log.Error(LogTag, "CultureInfo is null. locale: " + locale);
+            }
         }
 
         private void ChangeCurrentUICultureInfo(string locale)
         {
-            CultureInfo.CurrentUICulture = ConvertCultureInfo(locale);
+            CultureInfo cultureInfo = ConvertCultureInfo(locale);
+            if (cultureInfo != null)
+            {
+                CultureInfo.CurrentUICulture = cultureInfo;
+            }
+            else
+            {
+                Log.Error(LogTag, "CultureInfo is null. locale: " + locale);
+            }
         }
 
         private bool ExistCultureInfo(string locale)
@@ -354,8 +370,14 @@ namespace Tizen.Applications
 
             if (fallbackCultureInfo == null)
             {
-                locale = "en";
-                fallbackCultureInfo = GetCultureInfo(locale);
+                try
+                {
+                    fallbackCultureInfo = new CultureInfo("en");
+                }
+                catch (CultureNotFoundException e)
+                {
+                    Log.Error(LogTag, "Failed to create CultureInfo. err = " + e.Message);
+                }
             }
 
             return fallbackCultureInfo;