patch 8.0.1230: CTRL-A in Visual mode uses character after selection

Problem:    CTRL-A in Visual mode uses character after selection. (Nikolai
            Pavlov)
Solution:   Check the length before using a character.
diff --git a/src/charset.c b/src/charset.c
index a8b704c..003949f 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -1852,7 +1852,7 @@
  * If "what" contains STR2NR_OCT recognize octal numbers
  * If "what" contains STR2NR_HEX recognize hex numbers
  * If "what" contains STR2NR_FORCE always assume bin/oct/hex.
- * If maxlen > 0, check at a maximum maxlen chars
+ * If maxlen > 0, check at a maximum maxlen chars.
  */
     void
 vim_str2nr(
@@ -1900,7 +1900,7 @@
 	    if (what & STR2NR_OCT)
 	    {
 		/* Don't interpret "0", "08" or "0129" as octal. */
-		for (n = 1; VIM_ISDIGIT(ptr[n]); ++n)
+		for (n = 1; n != maxlen && VIM_ISDIGIT(ptr[n]); ++n)
 		{
 		    if (ptr[n] > '7')
 		    {
@@ -1908,8 +1908,6 @@
 			break;
 		    }
 		    pre = '0';	/* assume octal */
-		    if (n == maxlen)
-			break;
 		}
 	    }
 	}