summaryrefslogtreecommitdiff
path: root/lib/regex_internal.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2018-08-27 18:59:46 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2018-08-27 19:00:14 -0700
commitf1acdff5e04df90821732333c1bb9d8f586f08d2 (patch)
tree71b9a449169d96a7eaeb1bf07d0f14327cf9bfa0 /lib/regex_internal.c
parent717b0341aafb9ae9b93395dba1192b12c4459f0c (diff)
downloademacs-f1acdff5e04df90821732333c1bb9d8f586f08d2.tar.gz
Update from Gnulib
* build-aux/config.sub, lib/intprops.h, lib/regex_internal.c: * lib/regex_internal.h, lib/unistd.in.h, m4/limits-h.m4: * m4/stdint.m4, m4/unistd_h.m4: Copy from Gnulib. * lib/gnulib.mk.in: Regenerate.
Diffstat (limited to 'lib/regex_internal.c')
-rw-r--r--lib/regex_internal.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/regex_internal.c b/lib/regex_internal.c
index 32373565e6d..e3ce4abfa6b 100644
--- a/lib/regex_internal.c
+++ b/lib/regex_internal.c
@@ -317,7 +317,7 @@ build_wcs_upper_buffer (re_string_t *pstr)
mbclen = __mbrtowc (&wc,
((const char *) pstr->raw_mbs + pstr->raw_mbs_idx
+ byte_idx), remain_len, &pstr->cur_state);
- if (BE (mbclen < (size_t) -2, 1))
+ if (BE (0 < mbclen && mbclen < (size_t) -2, 1))
{
wchar_t wcu = __towupper (wc);
if (wcu != wc)
@@ -386,7 +386,7 @@ build_wcs_upper_buffer (re_string_t *pstr)
else
p = (const char *) pstr->raw_mbs + pstr->raw_mbs_idx + src_idx;
mbclen = __mbrtowc (&wc, p, remain_len, &pstr->cur_state);
- if (BE (mbclen < (size_t) -2, 1))
+ if (BE (0 < mbclen && mbclen < (size_t) -2, 1))
{
wchar_t wcu = __towupper (wc);
if (wcu != wc)