Fix t_isspace(), etc., when datlocprovider=i and datctype=C.
Jeff Davis <jdavis@postgresql.org>
Fix t_isspace(), etc., when datlocprovider=i and datctype=C. Check whether the datctype is C to determine whether t_isspace() and related functions use isspace() or iswspace(). Previously, t_isspace() checked whether the database default collation was C; which is incorrect when the default collation uses the ICU provider. Discussion: https://postgr.es/m/79e4354d9eccfdb00483146a6b9f6295202e7890.camel@j-davis.com Reviewed-by: Peter Eisentraut Backpatch-through: 15
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/tsearch/ts_locale.c | modified | +5 −10 |
| src/backend/tsearch/wparser_def.c | modified | +1 −2 |
| src/backend/utils/adt/pg_locale.c | modified | +3 −0 |
| src/backend/utils/init/postinit.c | modified | +4 −0 |
| src/include/utils/pg_locale.h | modified | +2 −0 |
Discussion
- unaccent fails when datlocprovider=i and datctype=C 2 messages · 2023-03-08 → 2023-03-10