summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNoah Misch2014-11-03 02:43:20 +0000
committerNoah Misch2014-11-03 02:43:20 +0000
commit846319521753af63c8f9b0893a116adc0a70e936 (patch)
tree99b784e8a17eec14d456662bf213856ec77a2193
parent9522efdae11c7bb3e12cd4bf070399d5417ac405 (diff)
Fix win32setlocale.c const-related warnings.
Back-patch to 9.2, like commit db29620d4d16e08241f965ccd70d0f65883ff0de.
-rw-r--r--src/port/win32setlocale.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/port/win32setlocale.c b/src/port/win32setlocale.c
index 379049b1bc..386750d891 100644
--- a/src/port/win32setlocale.c
+++ b/src/port/win32setlocale.c
@@ -103,8 +103,8 @@ static const struct locale_map locale_map_result[] = {
#define MAX_LOCALE_NAME_LEN 100
-static char *
-map_locale(struct locale_map *map, char *locale)
+static const char *
+map_locale(const struct locale_map *map, const char *locale)
{
static char aliasbuf[MAX_LOCALE_NAME_LEN];
int i;
@@ -167,7 +167,7 @@ map_locale(struct locale_map *map, char *locale)
char *
pgwin32_setlocale(int category, const char *locale)
{
- char *argument;
+ const char *argument;
char *result;
if (locale == NULL)
@@ -178,8 +178,12 @@ pgwin32_setlocale(int category, const char *locale)
/* Call the real setlocale() function */
result = setlocale(category, argument);
+ /*
+ * setlocale() is specified to return a "char *" that the caller is
+ * forbidden to modify, so casting away the "const" is innocuous.
+ */
if (result)
- result = map_locale(locale_map_result, result);
+ result = (char *) map_locale(locale_map_result, result);
return result;
}