summaryrefslogtreecommitdiff
path: root/locale/setlocale.c
diff options
context:
space:
mode:
Diffstat (limited to 'locale/setlocale.c')
-rw-r--r--locale/setlocale.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/locale/setlocale.c b/locale/setlocale.c
index bdc65f523e..79f15ccb40 100644
--- a/locale/setlocale.c
+++ b/locale/setlocale.c
@@ -361,7 +361,7 @@ setlocale (int category, const char *locale)
else
{
struct locale_data *newdata = NULL;
- const char *newname = locale;
+ const char *newname[1] = { locale };
/* Protect global data. */
__libc_lock_lock (__libc_setlocale_lock);
@@ -370,7 +370,7 @@ setlocale (int category, const char *locale)
{
/* Only actually load the data if anything will use it. */
newdata = _nl_find_locale (locale_path, locale_path_len, category,
- &newname);
+ &newname[0]);
if (newdata == NULL)
goto abort_single;
@@ -381,19 +381,19 @@ setlocale (int category, const char *locale)
}
/* Create new composite name. */
- composite = new_composite_name (category, &newname);
+ composite = new_composite_name (category, newname);
if (composite == NULL)
{
/* Say that we don't have any data loaded. */
abort_single:
- newname = NULL;
+ newname[0] = NULL;
}
else
{
if (_nl_current[category] != NULL)
setdata (category, newdata);
- setname (category, newname);
+ setname (category, newname[0]);
setname (LC_ALL, composite);
}
@@ -403,6 +403,6 @@ setlocale (int category, const char *locale)
/* Free the resources (the locale path variable. */
free (locale_path);
- return (char *) newname;
+ return (char *) newname[0];
}
}