utf8.c: "<" should be "<="
authorKarl Williamson <public@khwilliamson.com>
Wed, 11 May 2011 17:38:15 +0000 (11:38 -0600)
committerKarl Williamson <public@khwilliamson.com>
Thu, 19 May 2011 16:31:20 +0000 (10:31 -0600)
av_len() is misnamed, and hence led me earlier to stop the loop
one shy of what it should have been.  No actual bugs were caused by
this, but it could cause a duplicate entry in an array, which is
searched linearly, hence a slight slowdown.

utf8.c

diff --git a/utf8.c b/utf8.c
index 11c2fa4..371db53 100644 (file)
--- a/utf8.c
+++ b/utf8.c
@@ -2702,7 +2702,7 @@ Perl__swash_inversion_hash(pTHX_ SV* const swash)
                }
            }
 
-           for (i = 0; i < av_len(list); i++) {
+           for (i = 0; i <= av_len(list); i++) {
                SV** entryp = av_fetch(list, i, FALSE);
                SV* entry;
                if (entryp == NULL) {