aboutsummaryrefslogtreecommitdiffstats
path: root/support/regex_internal.c
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2018-08-26 17:51:23 +0300
committerArnold D. Robbins <arnold@skeeve.com>2018-08-26 17:51:23 +0300
commit627dd872d95178608379df6f4e1901e7469a4a40 (patch)
tree170c5386e43da30a2b6e72b81717a519ecf9f80a /support/regex_internal.c
parent889ffee94883bdc2064f10ebfb47502d3fa2d37b (diff)
parentaf61c1525fc7a3379979889fc97c82e812907cf2 (diff)
downloadegawk-627dd872d95178608379df6f4e1901e7469a4a40.tar.gz
egawk-627dd872d95178608379df6f4e1901e7469a4a40.tar.bz2
egawk-627dd872d95178608379df6f4e1901e7469a4a40.zip
Merge branch 'master' into feature/fix-comments
Diffstat (limited to 'support/regex_internal.c')
-rw-r--r--support/regex_internal.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/support/regex_internal.c b/support/regex_internal.c
index 7f0083b9..b10588f1 100644
--- a/support/regex_internal.c
+++ b/support/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)