From: Jeff Davis Date: Mon, 20 Apr 2026 21:44:08 +0000 (-0700) Subject: Fix callers of unicode_strtitle() using srclen == -1. X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=bdcb85b56ac4e0594e3c3402545a4c87712ce461;p=thirdparty%2Fpostgresql.git Fix callers of unicode_strtitle() using srclen == -1. Currently, only called that way in tests, which failed to fail. Discussion: https://postgr.es/m/581a72ff452bb045ba83bbe3c6cf4467702d4f0f.camel@j-davis.com Backpatch-through: 18 --- diff --git a/src/backend/utils/adt/pg_locale_builtin.c b/src/backend/utils/adt/pg_locale_builtin.c index b5aeb7a337a..794aa37df76 100644 --- a/src/backend/utils/adt/pg_locale_builtin.c +++ b/src/backend/utils/adt/pg_locale_builtin.c @@ -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, diff --git a/src/common/unicode/case_test.c b/src/common/unicode/case_test.c index e34f700d9c4..099530c1ead 100644 --- a/src/common/unicode/case_test.c +++ b/src/common/unicode/case_test.c @@ -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,