aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Davis <jdavis@postgresql.org>2024-03-18 09:15:47 -0700
committerJeff Davis <jdavis@postgresql.org>2024-03-18 09:15:47 -0700
commit61f352ece9e7eb89c7154da178d0c3bc69fc72c9 (patch)
tree31d756c8a6788fa4cbca6e5769649fabf45a2c72
parent5162f663fcbe837648ae28f00e18ed972f5e360b (diff)
downloadpostgresql-61f352ece9e7eb89c7154da178d0c3bc69fc72c9.tar.gz
postgresql-61f352ece9e7eb89c7154da178d0c3bc69fc72c9.zip
Fix unreachable code warning from commit 2d819a08a1.
Found by Coverity. Discussion: https://postgr.es/m/3422201.1710711993@sss.pgh.pa.us Reported-by: Tom Lane
-rw-r--r--src/backend/utils/adt/pg_locale.c23
1 files changed, 9 insertions, 14 deletions
diff --git a/src/backend/utils/adt/pg_locale.c b/src/backend/utils/adt/pg_locale.c
index 39390fbe4eb..364716bcec8 100644
--- a/src/backend/utils/adt/pg_locale.c
+++ b/src/backend/utils/adt/pg_locale.c
@@ -2501,28 +2501,23 @@ pg_strnxfrm_prefix(char *dest, size_t destsize, const char *src,
return result;
}
+/*
+ * Validate the locale and encoding combination, and return the canonical form
+ * of the locale name.
+ *
+ * The only supported locale for the builtin provider is "C", and it's
+ * available for any encoding.
+ */
const char *
builtin_validate_locale(int encoding, const char *locale)
{
- const char *canonical_name = NULL;
- int required_encoding = -1;
-
- if (strcmp(locale, "C") == 0)
- canonical_name = "C";
-
- if (!canonical_name)
+ if (strcmp(locale, "C") != 0)
ereport(ERROR,
(errcode(ERRCODE_WRONG_OBJECT_TYPE),
errmsg("invalid locale name \"%s\" for builtin provider",
locale)));
- if (required_encoding >= 0 && encoding != required_encoding)
- ereport(ERROR,
- (errcode(ERRCODE_WRONG_OBJECT_TYPE),
- errmsg("encoding \"%s\" does not match locale \"%s\"",
- pg_encoding_to_char(encoding), locale)));
-
- return canonical_name;
+ return "C";
}