diff options
Diffstat (limited to 'src/fe_utils/string_utils.c')
-rw-r--r-- | src/fe_utils/string_utils.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/fe_utils/string_utils.c b/src/fe_utils/string_utils.c index 5b206c7481d..3efee4e7eed 100644 --- a/src/fe_utils/string_utils.c +++ b/src/fe_utils/string_utils.c @@ -1072,12 +1072,9 @@ patternToSQLRegex(int encoding, PQExpBuffer dbnamebuf, PQExpBuffer schemabuf, appendPQExpBufferChar(curbuf, '\\'); else if (ch == '[' && cp[1] == ']') appendPQExpBufferChar(curbuf, '\\'); - i = PQmblen(cp, encoding); - while (i-- && *cp) - { - appendPQExpBufferChar(curbuf, *cp); - cp++; - } + i = PQmblenBounded(cp, encoding); + while (i--) + appendPQExpBufferChar(curbuf, *cp++); } } appendPQExpBufferStr(curbuf, ")$"); |