]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Fix callers of unicode_strtitle() using srclen == -1.
authorJeff Davis <jdavis@postgresql.org>
Mon, 20 Apr 2026 21:44:08 +0000 (14:44 -0700)
committerJeff Davis <jdavis@postgresql.org>
Mon, 20 Apr 2026 21:44:08 +0000 (14:44 -0700)
Currently, only called that way in tests, which failed to fail.

Discussion: https://postgr.es/m/581a72ff452bb045ba83bbe3c6cf4467702d4f0f.camel@j-davis.com
Backpatch-through: 18

src/backend/utils/adt/pg_locale_builtin.c
src/common/unicode/case_test.c

index b5aeb7a337a9f013f6760a3bfa182dd55555c2cd..794aa37df768b2863dc44daf947c52ece9575aa2 100644 (file)
@@ -97,7 +97,7 @@ strtitle_builtin(char *dest, size_t destsize, const char *src, ssize_t srclen,
 {
        struct WordBoundaryState wbstate = {
                .str = src,
-               .len = srclen,
+               .len = (srclen < 0) ? strlen(src) : srclen,
                .offset = 0,
                .posix = !locale->builtin.casemap_full,
                .init = false,
index e34f700d9c48da8e8cb02ceeafc0ab85f741d1dc..099530c1eade5eff6be6dbf4d29f0ac12ed19077 100644 (file)
@@ -304,7 +304,7 @@ tfunc_title(char *dst, size_t dstsize, const char *src,
 {
        struct WordBoundaryState wbstate = {
                .str = src,
-               .len = srclen,
+               .len = (srclen < 0) ? strlen(src) : srclen,
                .offset = 0,
                .init = false,
                .prev_alnum = false,