aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/utils/adt/pg_locale.c34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/backend/utils/adt/pg_locale.c b/src/backend/utils/adt/pg_locale.c
index aa9da99308a..d5003da4179 100644
--- a/src/backend/utils/adt/pg_locale.c
+++ b/src/backend/utils/adt/pg_locale.c
@@ -81,6 +81,10 @@
#include <shlwapi.h>
#endif
+/* Error triggered for locale-sensitive subroutines */
+#define PGLOCALE_SUPPORT_ERROR(provider) \
+ elog(ERROR, "unsupported collprovider for %s: %c", __func__, provider)
+
/*
* This should be large enough that most strings will fit, but small enough
* that we feel comfortable putting it on the stack
@@ -2031,7 +2035,7 @@ pg_strcoll(const char *arg1, const char *arg2, pg_locale_t locale)
#endif
else
/* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return result;
}
@@ -2067,7 +2071,7 @@ pg_strncoll(const char *arg1, size_t len1, const char *arg2, size_t len2,
#endif
else
/* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return result;
}
@@ -2086,7 +2090,7 @@ pg_strxfrm_libc(char *dest, const char *src, size_t destsize,
return strxfrm(dest, src, destsize);
#else
/* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return 0; /* keep compiler quiet */
#endif
}
@@ -2282,7 +2286,7 @@ pg_strxfrm_enabled(pg_locale_t locale)
return true;
else
/* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return false; /* keep compiler quiet */
}
@@ -2314,7 +2318,7 @@ pg_strxfrm(char *dest, const char *src, size_t destsize, pg_locale_t locale)
#endif
else
/* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return result;
}
@@ -2351,7 +2355,7 @@ pg_strnxfrm(char *dest, size_t destsize, const char *src, size_t srclen,
#endif
else
/* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return result;
}
@@ -2369,7 +2373,7 @@ pg_strxfrm_prefix_enabled(pg_locale_t locale)
return true;
else
/* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return false; /* keep compiler quiet */
}
@@ -2393,16 +2397,14 @@ pg_strxfrm_prefix(char *dest, const char *src, size_t destsize,
{
size_t result = 0; /* keep compiler quiet */
- if (!locale || locale->provider == COLLPROVIDER_LIBC)
- elog(ERROR, "collprovider '%c' does not support pg_strxfrm_prefix()",
- locale->provider);
+ if (!locale)
+ PGLOCALE_SUPPORT_ERROR(COLLPROVIDER_LIBC);
#ifdef USE_ICU
else if (locale->provider == COLLPROVIDER_ICU)
result = pg_strnxfrm_prefix_icu(dest, src, -1, destsize, locale);
#endif
else
- /* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return result;
}
@@ -2430,16 +2432,14 @@ pg_strnxfrm_prefix(char *dest, size_t destsize, const char *src,
{
size_t result = 0; /* keep compiler quiet */
- if (!locale || locale->provider == COLLPROVIDER_LIBC)
- elog(ERROR, "collprovider '%c' does not support pg_strnxfrm_prefix()",
- locale->provider);
+ if (!locale)
+ PGLOCALE_SUPPORT_ERROR(COLLPROVIDER_LIBC);
#ifdef USE_ICU
else if (locale->provider == COLLPROVIDER_ICU)
result = pg_strnxfrm_prefix_icu(dest, src, -1, destsize, locale);
#endif
else
- /* shouldn't happen */
- elog(ERROR, "unsupported collprovider: %c", locale->provider);
+ PGLOCALE_SUPPORT_ERROR(locale->provider);
return result;
}