diff --git a/7.3.558 b/7.3.558 new file mode 100644 index 0000000..015bc37 --- /dev/null +++ b/7.3.558 @@ -0,0 +1,90 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.3.558 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.3.558 +Problem: Memory access error. (Gary Johnson) +Solution: Allocate one more byte. (Dominique Pelle) +Files: src/misc1.c + + +*** ../vim-7.3.557/src/misc1.c 2012-06-14 20:59:20.000000000 +0200 +--- src/misc1.c 2012-06-20 12:34:57.000000000 +0200 +*************** +*** 460,466 **** + * + * I'm not sure if regmmatch_T (multi-match) is needed in this case. + * It may be true that this section would work properly using the +! * regmatch_T code above, in which case, these two seperate sections + * should be consolidated w/ FEAT_COMMENTS making lead_len > 0... + */ + #endif +--- 460,466 ---- + * + * I'm not sure if regmmatch_T (multi-match) is needed in this case. + * It may be true that this section would work properly using the +! * regmatch_T code above, in which case, these two separate sections + * should be consolidated w/ FEAT_COMMENTS making lead_len > 0... + */ + #endif +*************** +*** 1053,1061 **** + } + if (lead_len) + { +! /* allocate buffer (may concatenate p_exta later) */ + leader = alloc(lead_len + lead_repl_len + extra_space + extra_len +! + (second_line_indent > 0 ? second_line_indent : 0)); + allocated = leader; /* remember to free it later */ + + if (leader == NULL) +--- 1053,1061 ---- + } + if (lead_len) + { +! /* allocate buffer (may concatenate p_extra later) */ + leader = alloc(lead_len + lead_repl_len + extra_space + extra_len +! + (second_line_indent > 0 ? second_line_indent : 0) + 1); + allocated = leader; /* remember to free it later */ + + if (leader == NULL) +*************** +*** 3342,3348 **** + buf = alloc(buflen); + else if (maxlen < 10) + { +! /* Need some more space. This migth happen when receiving a long + * escape sequence. */ + buflen += 100; + buf = vim_realloc(buf, buflen); +--- 3342,3348 ---- + buf = alloc(buflen); + else if (maxlen < 10) + { +! /* Need some more space. This might happen when receiving a long + * escape sequence. */ + buflen += 100; + buf = vim_realloc(buf, buflen); +*** ../vim-7.3.557/src/version.c 2012-06-20 11:54:55.000000000 +0200 +--- src/version.c 2012-06-20 12:36:29.000000000 +0200 +*************** +*** 716,717 **** +--- 716,719 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 558, + /**/ + +-- +George: "I just got a new set of golf clubs for my wife!" + John: "Great trade!" + + /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ +/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ +\\\ an exciting new programming language -- http://www.Zimbu.org /// + \\\ help me help AIDS victims -- http://ICCF-Holland.org ///