postgres.git / summary / log / commit / refs

commit    3ca22c7b7ccb1f8897ca6d05f4e6c4934c537eeb
Author:   Jeff Davis <jdavis@postgresql.org>
Date:     Wed Aug 19 17:36:44 2026 +0000

    pg_locale.c, unicode_case.c: use size_t for iteration.
    
    Already done by e615da8cb21b in master. Backpatch these particular
    cases to make other backpatches in this area safer, and to be safe for
    callers in extensions that we don't know about.
    
    This applies to REL_19_STABLE and REL_18_STABLE only.
    
    Suggested-by: Andres Freund <andres@anarazel.de>
    Reviewed-by: Andres Freund <andres@anarazel.de>
    Discussion: https://postgr.es/m/v36ssaygf7grb3qzfsjhtdzi7kqd45ds56nyuf7gi5qjml4qbb@ezmfqzmhlrs2


src/backend/utils/adt/pg_locale.c | 6 +++--- src/common/unicode_case.c | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/backend/utils/adt/pg_locale.c b/src/backend/utils/adt/pg_locale.c index af01c9cf950..554562f60d5 100644 --- a/src/backend/utils/adt/pg_locale.c +++ b/src/backend/utils/adt/pg_locale.c @@ -1277,7 +1277,7 @@ get_collation_actual_version(char collprovider, const char *collcollate) static size_t strlower_c(char *dst, size_t dstsize, const char *src, size_t srclen) { - int i; + size_t i; for (i = 0; i < srclen && i < dstsize; i++) dst[i] = pg_ascii_tolower(src[i]); @@ -1291,7 +1291,7 @@ static size_t strtitle_c(char *dst, size_t dstsize, const char *src, size_t srclen) { bool wasalnum = false; - int i; + size_t i; for (i = 0; i < srclen && i < dstsize; i++) { @@ -1315,7 +1315,7 @@ strtitle_c(char *dst, size_t dstsize, const char *src, size_t srclen) static size_t strupper_c(char *dst, size_t dstsize, const char *src, size_t srclen) { - int i; + size_t i; for (i = 0; i < srclen && i < dstsize; i++) dst[i] = pg_ascii_toupper(src[i]); diff --git a/src/common/unicode_case.c b/src/common/unicode_case.c index 8639b203e0c..86e0b57d7d3 100644 --- a/src/common/unicode_case.c +++ b/src/common/unicode_case.c @@ -341,7 +341,7 @@ check_final_sigma(const unsigned char *str, size_t len, size_t offset) int ulen; /* iterate backwards looking for preceding character */ - for (int i = offset; i > 0;) + for (size_t i = offset; i > 0;) { /* skip backwards through continuation bytes */ i--; @@ -369,7 +369,7 @@ check_final_sigma(const unsigned char *str, size_t len, size_t offset) ulen = utf8_mblen((const unsigned char *) str + offset); /* iterate forward looking for following character */ - for (int i = offset + ulen; i < len;) + for (size_t i = offset + ulen; i < len;) { ulen = utf8_mblen((const unsigned char *) str + i); [parent: b0a36462bf28]