From 61f352ece9e7eb89c7154da178d0c3bc69fc72c9 Mon Sep 17 00:00:00 2001 From: Jeff Davis Date: Mon, 18 Mar 2024 09:15:47 -0700 Subject: [PATCH] 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 --- src/backend/utils/adt/pg_locale.c | 23 +++++++++-------------- 1 file 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"; }