summaryrefslogtreecommitdiff
path: root/intl/locale/nsLocaleService.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'intl/locale/nsLocaleService.cpp')
-rw-r--r--intl/locale/nsLocaleService.cpp37
1 files changed, 3 insertions, 34 deletions
diff --git a/intl/locale/nsLocaleService.cpp b/intl/locale/nsLocaleService.cpp
index d81fb50c2e..5984d12274 100644
--- a/intl/locale/nsLocaleService.cpp
+++ b/intl/locale/nsLocaleService.cpp
@@ -17,8 +17,6 @@
#if defined(XP_WIN)
# include "nsWin32Locale.h"
-#elif defined(XP_MACOSX)
-# include <Carbon/Carbon.h>
#elif defined(XP_UNIX)
# include <locale.h>
# include <stdlib.h>
@@ -41,7 +39,7 @@ const char* LocaleList[LocaleListLength] =
#define NSILOCALE_MAX_ACCEPT_LANGUAGE 16
#define NSILOCALE_MAX_ACCEPT_LENGTH 18
-#if (defined(XP_UNIX) && !defined(XP_MACOSX))
+#if defined(XP_UNIX)
static int posix_locale_category[LocaleListLength] =
{
LC_COLLATE,
@@ -113,7 +111,7 @@ nsLocaleService::nsLocaleService(void)
rv = NewLocale(xpLocale, getter_AddRefs(mApplicationLocale));
NS_ENSURE_SUCCESS_VOID(rv);
#endif
-#if defined(XP_UNIX) && !defined(XP_MACOSX)
+#if defined(XP_UNIX)
RefPtr<nsLocale> resultLocale(new nsLocale());
NS_ENSURE_TRUE_VOID(resultLocale);
@@ -154,36 +152,7 @@ nsLocaleService::nsLocaleService(void)
}
mSystemLocale = do_QueryInterface(resultLocale);
mApplicationLocale = do_QueryInterface(resultLocale);
-
#endif // XP_UNIX
-
-#ifdef XP_MACOSX
- // Get string representation of user's current locale
- CFLocaleRef userLocaleRef = ::CFLocaleCopyCurrent();
- CFStringRef userLocaleStr = ::CFLocaleGetIdentifier(userLocaleRef);
- ::CFRetain(userLocaleStr);
-
- AutoTArray<UniChar, 32> buffer;
- int size = ::CFStringGetLength(userLocaleStr);
- buffer.SetLength(size + 1);
- CFRange range = ::CFRangeMake(0, size);
- ::CFStringGetCharacters(userLocaleStr, range, buffer.Elements());
- buffer[size] = 0;
-
- // Convert the locale string to the format that Mozilla expects
- nsAutoString xpLocale(reinterpret_cast<char16_t*>(buffer.Elements()));
- xpLocale.ReplaceChar('_', '-');
-
- nsresult rv = NewLocale(xpLocale, getter_AddRefs(mSystemLocale));
- if (NS_SUCCEEDED(rv)) {
- mApplicationLocale = mSystemLocale;
- }
-
- ::CFRelease(userLocaleStr);
- ::CFRelease(userLocaleRef);
-
- NS_ASSERTION(mApplicationLocale, "Failed to create locale objects");
-#endif // XP_MACOSX
}
nsLocaleService::~nsLocaleService(void)
@@ -206,7 +175,7 @@ nsLocaleService::NewLocale(const nsAString &aLocale, nsILocale **_retval)
NS_ConvertASCIItoUTF16 category(LocaleList[i]);
result = resultLocale->AddCategory(category, aLocale);
if (NS_FAILED(result)) return result;
-#if defined(XP_UNIX) && !defined(XP_MACOSX)
+#if defined(XP_UNIX)
category.AppendLiteral("##PLATFORM");
result = resultLocale->AddCategory(category, aLocale);
if (NS_FAILED(result)) return result;