natSystem.cc (init_properties): Set user.language and user.region.
2000-11-29 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/natSystem.cc (init_properties): Set user.language and user.region. * configure.in: Check for setlocale. * configure: Rebuilt. * include/config.h.in: Rebuilt. From-SVN: r37842
This commit is contained in:
parent
56f8f4fb75
commit
5662d5333a
5 changed files with 43 additions and 4 deletions
|
@ -339,6 +339,31 @@ java::lang::System::init_properties (void)
|
|||
#endif /* HAVE_UNISTD_H */
|
||||
#endif /* HAVE_GETCWD */
|
||||
|
||||
// Set user locale properties based on setlocale()
|
||||
#ifdef HAVE_SETLOCALE
|
||||
char *locale = setlocale (LC_ALL, "");
|
||||
if (locale && strlen (locale) >= 2)
|
||||
{
|
||||
char buf[3];
|
||||
buf[2] = '\0';
|
||||
// copy the first two chars to user.language
|
||||
strncpy (buf, locale, 2);
|
||||
SET ("user.language", buf);
|
||||
// if the next char is a '_', copy the two after that to user.region
|
||||
locale += 2;
|
||||
if (locale[0] == '_')
|
||||
{
|
||||
locale++;
|
||||
strncpy (buf, locale, 2);
|
||||
SET ("user.region", buf);
|
||||
}
|
||||
}
|
||||
else
|
||||
#endif /* HAVE_SETLOCALE */
|
||||
{
|
||||
SET ("user.language", "en");
|
||||
}
|
||||
|
||||
// Set some properties according to whatever was compiled in with
|
||||
// `-D'.
|
||||
for (int i = 0; _Jv_Compiler_Properties[i]; ++i)
|
||||
|
@ -382,7 +407,7 @@ java::lang::System::init_properties (void)
|
|||
sb->append ((jchar) ';');
|
||||
#else
|
||||
sb->append ((jchar) ':');
|
||||
#endif;
|
||||
#endif
|
||||
}
|
||||
if (cp != NULL)
|
||||
sb->append (cp);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue