summaryrefslogtreecommitdiff
path: root/st.c
diff options
context:
space:
mode:
authorshyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-11-08 06:22:57 +0000
committershyouhei <shyouhei@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-11-08 06:22:57 +0000
commit7cc97cfe092c43d9729412fde2e1aa54746f2307 (patch)
tree1de7f2b3a89223fb969999bb1122736f9652494f /st.c
parentc68d1c924cfde9c86652a13b9e76b8930c034142 (diff)
avoid (size_t)-- (2nd try)
The decrements overflow and these variables remain ~0 when leaving the while loops. They are not fatal by accident, but better replace with ordinal for loops. See also: https://travis-ci.org/ruby/ruby/jobs/452218871#L3246 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'st.c')
-rw-r--r--st.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/st.c b/st.c
index ee3dbb125d..77d998f9fc 100644
--- a/st.c
+++ b/st.c
@@ -2036,8 +2036,9 @@ int
st_locale_insensitive_strncasecmp(const char *s1, const char *s2, size_t n)
{
char c1, c2;
+ size_t i;
- while (n--) {
+ for (i = 0; i < n; i++) {
c1 = *s1++;
c2 = *s2++;
if (c1 == '\0' || c2 == '\0') {