--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.010
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.010
+Problem: When using CTRL-A on a very long number Vim can crash. (Michael
+ Naumann)
+Solution: Truncate the length of the new number to avoid a buffer overflow.
+Files: src/ops.c
+
+
+*** ../vim-5.7.9/src/ops.c Fri Jun 2 12:28:27 2000
+--- src/ops.c Fri Oct 6 17:55:14 2000
+***************
+*** 3940,3945 ****
+--- 3940,3949 ----
+ --length;
+ }
+
++ /* truncate to max length of a number */
++ if (length >= NUMBUFLEN - 1)
++ length = NUMBUFLEN - 2;
++
+ /*
+ * Put the number characters in buf2[].
+ */
+*** ../vim-5.7.9/src/version.c Mon Aug 7 09:59:44 2000
+--- src/version.c Fri Oct 6 18:06:45 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 10,
+ /**/
+
+--
+hundred-and-one symptoms of being an internet addict:
+196. Your computer costs more than your car.
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.011 (extra)
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.011 (extra)
+Problem: Win32 GUI on NT 5 and Win98: Displaying Hebrew is reversed.
+Solution: Output each character separately, to avoid that Windows reverses
+ the text for some fonts. (Ron Aaron)
+Files: src/gui_w32.c
+
+
+*** ../vim-5.7.10/src/gui_w32.c Tue Apr 18 10:36:37 2000
+--- src/gui_w32.c Sat Oct 7 13:38:08 2000
+***************
+*** 3401,3406 ****
+--- 3401,3456 ----
+
+ #define UNIBUFSIZE 2000 /* a big buffer */
+
++ #ifdef FEAT_RIGHTLEFT
++ /*
++ * What is this for? In the case where you are using Win98 or Win2K or later,
++ * and you are using a Hebrew font (or Arabic!), Windows does you a favor and
++ * reverses the string sent to the TextOut... family. This sucks, because we
++ * go to a lot of effort to do the right thing, and there doesn't seem to be a
++ * way to tell Windblows not to do this!
++ *
++ * The short of it is that this 'RevOut' only gets called if you are running
++ * one of the new, "improved" MS OSes, and only if you are running in
++ * 'rightleft' mode. It makes display take *slightly* longer, but not
++ * noticeably so.
++ */
++ static void
++ RevOut( HDC s_hdc,
++ int col,
++ int row,
++ UINT foptions,
++ CONST RECT *pcliprect,
++ LPCTSTR text,
++ UINT len,
++ CONST INT *padding)
++ {
++ int ix;
++ static int special = -1;
++
++ if (special == -1)
++ {
++ /* Check windows version: special treatment is needed if it is NT 5 or
++ * Win98 or higher. */
++ if ((os_version.dwPlatformId == VER_PLATFORM_WIN32_NT
++ && os_version.dwMajorVersion >= 5)
++ || (os_version.dwPlatformId == VER_PLATFORM_WIN32_WINDOWS
++ && (os_version.dwMajorVersion > 4
++ || (os_version.dwMajorVersion == 4
++ && os_version.dwMinorVersion > 0))))
++ special = 1;
++ else
++ special = 0;
++ }
++
++ if (special)
++ for (ix = 0; ix < len; ++ix)
++ ExtTextOut(s_hdc, col + TEXT_X(ix), row, foptions,
++ pcliprect, text + ix, 1, padding);
++ else
++ ExtTextOut(s_hdc, col, row, foptions, pcliprect, text, len, padding);
++ }
++ #endif
++
+ void
+ gui_mch_draw_string(
+ int row,
+***************
+*** 3542,3549 ****
+ }
+ else
+ #endif
+! ExtTextOut(s_hdc, TEXT_X(col), TEXT_Y(row),
+ foptions, pcliprect, (char *)s, len, padding);
+ }
+
+ if (flags & DRAW_UNDERL)
+--- 3592,3608 ----
+ }
+ else
+ #endif
+! {
+! #ifdef FEAT_RIGHTLEFT
+! /* ron: fixed Hebrew on Win98/Win2000 */
+! if (curwin->w_p_rl)
+! RevOut(s_hdc, TEXT_X(col), TEXT_Y(row),
+! foptions, pcliprect, (char *)s, len, padding);
+! else
+! #endif
+! ExtTextOut(s_hdc, TEXT_X(col), TEXT_Y(row),
+ foptions, pcliprect, (char *)s, len, padding);
++ }
+ }
+
+ if (flags & DRAW_UNDERL)
+*** ../vim-5.7.10/src/version.c Sat Oct 7 13:42:12 2000
+--- src/version.c Sat Oct 7 13:38:27 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 11,
+ /**/
+
+--
+hundred-and-one symptoms of being an internet addict:
+202. You're amazed to find out Spam is a food.
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.012
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.012
+Problem: When using "-complete=buffer" for ":command" the user command
+ fails.
+Solution: In a user command don't replace the buffer name with a count for
+ the buffer number.
+Files: src/ex_docmd.c
+
+
+*** ../vim-5.7.11/src/ex_docmd.c Tue Jun 20 11:18:24 2000
+--- src/ex_docmd.c Sun Oct 22 16:35:35 2000
+***************
+*** 1350,1358 ****
+
+ /*
+ * Accept buffer name. Cannot be used at the same time with a buffer
+! * number.
+ */
+! if ((ea.argt & BUFNAME) && *ea.arg && ea.addr_count == 0)
+ {
+ /*
+ * :bdelete and :bunload take several arguments, separated by spaces:
+--- 1350,1362 ----
+
+ /*
+ * Accept buffer name. Cannot be used at the same time with a buffer
+! * number. Don't do this for a user command.
+ */
+! if ((ea.argt & BUFNAME) && *ea.arg && ea.addr_count == 0
+! #ifdef USER_COMMANDS
+! && ea.cmdidx != CMD_USER
+! #endif
+! )
+ {
+ /*
+ * :bdelete and :bunload take several arguments, separated by spaces:
+*** ../vim-5.7.11/src/version.c Sat Oct 7 13:45:34 2000
+--- src/version.c Sun Oct 22 16:38:16 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 12,
+ /**/
+
+--
+ARTHUR: You fight with the strength of many men, Sir knight.
+ I am Arthur, King of the Britons. [pause]
+ I seek the finest and the bravest knights in the land to join me
+ in my Court of Camelot. [pause]
+ You have proved yourself worthy; will you join me? [pause]
+ You make me sad. So be it. Come, Patsy.
+BLACK KNIGHT: None shall pass.
+ The Quest for the Holy Grail (Monty Python)
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.013
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.013
+Problem: "gD" didn't always find a match in the first line, depending on
+ the column the search started at.
+Solution: Reset the column to zero before starting to search.
+Files: src/normal.c
+
+
+*** ../vim-5.7.12/src/normal.c Mon Jun 5 15:22:19 2000
+--- src/normal.c Thu Oct 26 21:41:10 2000
+***************
+*** 3172,3177 ****
+--- 3172,3178 ----
+ while (curwin->w_cursor.lnum > 1 && *skipwhite(ml_get_curline()) != NUL)
+ --curwin->w_cursor.lnum;
+ }
++ curwin->w_cursor.col = 0;
+
+ /* Search forward for the identifier, ignore comment lines. */
+ while ((t = searchit(curbuf, &curwin->w_cursor, FORWARD, pat, 1L, 0,
+*** ../vim-5.7.12/src/version.c Sun Oct 22 16:43:53 2000
+--- src/version.c Thu Oct 26 21:41:19 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 13,
+ /**/
+
+--
+Wi n0t trei a h0liday in Sweden thi yer?
+ "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.014
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.014
+Problem: Rot13 encoding was done on characters with accents, which is
+ wrong. (Sven Gottwald)
+Solution: Only do rot13 encoding on ASCII characters.
+Files: src/ops.c
+
+
+*** ../vim-5.7.13/src/ops.c Sat Oct 7 13:42:12 2000
+--- src/ops.c Wed Nov 1 09:38:24 2000
+***************
+*** 1793,1798 ****
+--- 1793,1801 ----
+ if (c & 0xff00) /* No lower/uppercase letter */
+ return;
+ #endif
++ /* Only do rot13 encoding for ASCII characters. */
++ if (c >= 0x80 && op_type == OP_ROT13)
++ return;
+ nc = c;
+ if (islower(c))
+ {
+*** ../vim-5.7.13/src/version.c Thu Oct 26 21:44:39 2000
+--- src/version.c Wed Nov 1 09:41:30 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 14,
+ /**/
+
+--
+No engineer can take a shower without wondering if some sort of Teflon coating
+would make showering unnecessary.
+ (Scott Adams - The Dilbert principle)
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.015
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.015
+Problem: Syntax files for Vim 6.0 can't be used with 5.x.
+Solution: Add the "default" argument to the ":highlight" command: Ignore the
+ command if highlighting was already specified.
+Files: src/syntax.c
+
+
+*** ../vim-5.7.14/src/syntax.c Mon May 22 09:42:51 2000
+--- src/syntax.c Wed Nov 8 19:33:11 2000
+***************
+*** 78,83 ****
+--- 78,84 ----
+ static int highlight_list_arg __ARGS((int id, int didh, int type, int iarg, char_u *sarg, char *name));
+ static int syn_add_group __ARGS((char_u *name));
+ static int syn_list_header __ARGS((int did_header, int outlen, int id));
++ static int hl_has_settings __ARGS((int idx, int check_link));
+ static void highlight_clear __ARGS((int idx));
+
+ #ifdef USE_GUI
+***************
+*** 4841,4846 ****
+--- 4842,4848 ----
+ int attr;
+ int id;
+ int idx;
++ int dodefault = FALSE;
+ int doclear = FALSE;
+ int dolink = FALSE;
+ int error = FALSE;
+***************
+*** 4868,4873 ****
+--- 4870,4886 ----
+ name_end = skiptowhite(line);
+ linep = skipwhite(name_end);
+
++ /*
++ * Check for "default" argument.
++ */
++ if (STRNCMP(line, "default", name_end - line) == 0)
++ {
++ dodefault = TRUE;
++ line = linep;
++ name_end = skiptowhite(line);
++ linep = skipwhite(name_end);
++ }
++
+ if (STRNCMP(line, "clear", name_end - line) == 0)
+ doclear = TRUE;
+ if (STRNCMP(line, "link", name_end - line) == 0)
+***************
+*** 4927,4940 ****
+ * for the group, unless '!' is used
+ */
+ if (to_id > 0 && !forceit && !init
+! && (HL_TABLE()[from_id - 1].sg_term_attr != 0
+! || HL_TABLE()[from_id - 1].sg_cterm_attr != 0
+! #ifdef USE_GUI
+! || HL_TABLE()[from_id - 1].sg_gui_attr != 0
+! #endif
+! ))
+ {
+! if (sourcing_name == NULL)
+ EMSG("group has settings, highlight link ignored");
+ }
+ else
+--- 4940,4948 ----
+ * for the group, unless '!' is used
+ */
+ if (to_id > 0 && !forceit && !init
+! && hl_has_settings(from_id - 1, dodefault))
+ {
+! if (sourcing_name == NULL && !dodefault)
+ EMSG("group has settings, highlight link ignored");
+ }
+ else
+***************
+*** 4971,4976 ****
+--- 4979,4989 ----
+ if (id == 0) /* failed (out of memory) */
+ return;
+ idx = id - 1; /* index is ID minus one */
++
++ /* Return if "default" was used and the group already has settings. */
++ if (dodefault && hl_has_settings(idx, TRUE))
++ return;
++
+ if (STRCMP(HL_TABLE()[idx].sg_name_u, "NORMAL") == 0)
+ is_normal_group = TRUE;
+ #ifdef USE_GUI_X11
+***************
+*** 5473,5478 ****
+--- 5486,5509 ----
+ /* Only call highlight_changed() once, after sourcing a syntax file */
+ need_highlight_changed = TRUE;
+ }
++
++ /*
++ * Return TRUE if highlight group "idx" has any settings.
++ * When "check_link" is TRUE also check for an existing link.
++ */
++ static int
++ hl_has_settings(idx, check_link)
++ int idx;
++ int check_link;
++ {
++ return ( HL_TABLE()[idx].sg_term_attr != 0
++ || HL_TABLE()[idx].sg_cterm_attr != 0
++ #ifdef FEAT_GUI
++ || HL_TABLE()[idx].sg_gui_attr != 0
++ #endif
++ || (check_link && (HL_TABLE()[idx].sg_set & SG_LINK)));
++ }
++
+
+ /*
+ * Clear highlighting for one group.
+*** ../vim-5.7.14/src/version.c Wed Nov 1 09:55:17 2000
+--- src/version.c Wed Nov 8 19:33:20 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 15,
+ /**/
+
+--
+Time is money. Especially if you make clocks.
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.016
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.016
+Problem: When hitting 'n' for a ":s///c" command, the ignore-case flag was
+ not restored, some matches were skipped. (Daniel Blaustein)
+Solution: Restore the reg_ic variable when 'n' was hit.
+Files: src/ex_cmds.c
+
+
+*** ../vim-5.7.15/src/ex_cmds.c Tue Jun 20 15:55:51 2000
+--- src/ex_cmds.c Sun Nov 12 13:07:10 2000
+***************
+*** 2988,2994 ****
+ EXARG *eap;
+ {
+ linenr_t lnum;
+! long i;
+ char_u *ptr;
+ char_u *old_line;
+ vim_regexp *prog;
+--- 2988,2994 ----
+ EXARG *eap;
+ {
+ linenr_t lnum;
+! long i = 0;
+ char_u *ptr;
+ char_u *old_line;
+ vim_regexp *prog;
+***************
+*** 3312,3318 ****
+ break;
+ }
+ else if (i == 'n')
+! goto skip;
+ else if (i == 'y')
+ break;
+ else if (i == 'a')
+--- 3312,3318 ----
+ break;
+ }
+ else if (i == 'n')
+! break;
+ else if (i == 'y')
+ break;
+ else if (i == 'a')
+***************
+*** 3330,3336 ****
+ #ifdef USE_MOUSE
+ setmouse();
+ #endif
+!
+ if (got_quit)
+ break;
+ }
+--- 3330,3337 ----
+ #ifdef USE_MOUSE
+ setmouse();
+ #endif
+! if (i == 'n')
+! goto skip;
+ if (got_quit)
+ break;
+ }
+*** ../vim-5.7.15/src/version.c Wed Nov 8 19:44:44 2000
+--- src/version.c Sun Nov 12 13:10:10 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 16,
+ /**/
+
+--
+From "know your smileys":
+:^[/ mean-smiley-with-cigarette
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.017
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.017
+Problem: When using a Vim script for Vim 6.0 with <SID> before a function
+ name, it produces an error message even when inside an "if version
+ >= 600". (Charles Campbell)
+Solution: Ignore errors in the function name when the function is not going
+ to be defined.
+Files: src/eval.c
+
+
+*** ../vim-5.7.16/src/eval.c Tue Jun 6 12:55:14 2000
+--- src/eval.c Thu Nov 16 15:18:27 2000
+***************
+*** 4822,4828 ****
+ return;
+ }
+
+! if (!isupper(*eap->arg))
+ {
+ EMSG2("Function name must start with a capital: %s", eap->arg);
+ return;
+--- 4822,4828 ----
+ return;
+ }
+
+! if (!isupper(*eap->arg) && !eap->skip)
+ {
+ EMSG2("Function name must start with a capital: %s", eap->arg);
+ return;
+***************
+*** 4858,4864 ****
+ name = eap->arg;
+ for (p = name; isalpha(*p) || isdigit(*p) || *p == '_'; ++p)
+ ;
+! if (p == name)
+ {
+ EMSG("Function name required");
+ return;
+--- 4858,4864 ----
+ name = eap->arg;
+ for (p = name; isalpha(*p) || isdigit(*p) || *p == '_'; ++p)
+ ;
+! if (p == name && !eap->skip)
+ {
+ EMSG("Function name required");
+ return;
+***************
+*** 4867,4874 ****
+ p = skipwhite(p);
+ if (*p != '(')
+ {
+! EMSG2("Missing '(': %s", name);
+! return;
+ }
+ p = skipwhite(p + 1);
+
+--- 4867,4878 ----
+ p = skipwhite(p);
+ if (*p != '(')
+ {
+! if (!eap->skip)
+! {
+! EMSG2("Missing '(': %s", name);
+! return;
+! }
+! p = vim_strchr(p, '(');
+ }
+ p = skipwhite(p + 1);
+
+***************
+*** 4893,4899 ****
+ ++p;
+ if (arg == p || isdigit(*arg))
+ {
+! EMSG2("Illegal argument: %s", arg);
+ goto erret;
+ }
+ if (ga_grow(&newargs, 1) == FAIL)
+--- 4897,4904 ----
+ ++p;
+ if (arg == p || isdigit(*arg))
+ {
+! if (!eap->skip)
+! EMSG2("Illegal argument: %s", arg);
+ goto erret;
+ }
+ if (ga_grow(&newargs, 1) == FAIL)
+***************
+*** 4915,4921 ****
+ p = skipwhite(p);
+ if (mustend && *p != ')')
+ {
+! EMSG2(e_invarg2, eap->arg);
+ goto erret;
+ }
+ }
+--- 4920,4927 ----
+ p = skipwhite(p);
+ if (mustend && *p != ')')
+ {
+! if (!eap->skip)
+! EMSG2(e_invarg2, eap->arg);
+ goto erret;
+ }
+ }
+***************
+*** 4941,4947 ****
+
+ if (*p != NUL && *p != '"' && *p != '\n')
+ {
+! EMSG(e_trailing);
+ goto erret;
+ }
+
+--- 4947,4954 ----
+
+ if (*p != NUL && *p != '"' && *p != '\n')
+ {
+! if (!eap->skip)
+! EMSG(e_trailing);
+ goto erret;
+ }
+
+*** ../vim-5.7.16/src/version.c Thu Nov 16 15:15:50 2000
+--- src/version.c Thu Nov 16 15:15:17 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 17,
+ /**/
+
+--
+hundred-and-one symptoms of being an internet addict:
+145. You e-mail your boss, informing him you'll be late.
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.018
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.018
+Problem: When running "rvim" or "vim -Z" it was still possible to execute a
+ shell command with system() and backtick-expansion. (Antonios A.
+ Kavarnos)
+Solution: Disallow executing a shell command in get_cmd_output() and
+ mch_expand_wildcards().
+Files: src/misc1.c, src/os_unix.c
+
+
+*** ../vim-5.7.17/src/misc1.c Tue Jun 20 21:30:53 2000
+--- src/misc1.c Thu Nov 16 16:45:35 2000
+***************
+*** 5695,5700 ****
+--- 5695,5703 ----
+ int i = 0;
+ FILE *fd;
+
++ if (check_restricted() || check_secure())
++ return NULL;
++
+ /* get a name for the temp file */
+ if ((tempname = vim_tempname('o')) == NULL)
+ {
+*** ../vim-5.7.17/src/os_unix.c Wed Jun 7 17:24:21 2000
+--- src/os_unix.c Thu Nov 16 17:02:34 2000
+***************
+*** 3334,3339 ****
+--- 3334,3348 ----
+ if (!have_wildcard(num_pat, pat))
+ return save_patterns(num_pat, pat, num_file, file);
+
++ /*
++ * Don't allow the use of backticks in secure and restricted mode.
++ */
++ if (secure || restricted)
++ for (i = 0; i < num_pat; ++i)
++ if (vim_strchr(pat[i], '`') != NULL
++ && (check_restricted() || check_secure()))
++ return FAIL;
++
+ /*
+ * get a name for the temp file
+ */
+*** ../vim-5.7.17/src/version.c Thu Nov 16 17:06:52 2000
+--- src/version.c Thu Nov 16 16:45:44 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 18,
+ /**/
+
+--
+hundred-and-one symptoms of being an internet addict:
+156. You forget your friend's name but not her e-mail address.
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///
--- /dev/null
+To: vim-dev@vim.org
+Subject: Patch 5.7.019
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+------------
+
+Patch 5.7.019
+Problem: Multibyte: In a substitute string, a multi-byte character isn't
+ skipped properly, can be a problem when the second byte is a
+ backslash.
+Solution: Skip an extra byte for a double-byte character. (Muraoka Taro)
+Files: src/ex_cmds.c
+
+
+*** ../vim-5.7.18/src/ex_cmds.c Thu Nov 16 15:15:49 2000
+--- src/ex_cmds.c Tue Nov 28 22:27:29 2000
+***************
+*** 3083,3088 ****
+--- 3083,3093 ----
+ cmd[0] = Ctrl('V');
+ ++cmd;
+ }
++ #ifdef MULTI_BYTE
++ /* skip an extra byte for a double-byte character */
++ if (is_dbcs && cmd[1] != NUL && IsLeadByte(cmd[0]))
++ ++cmd;
++ #endif
+ ++cmd;
+ }
+
+*** ../vim-5.7.18/src/version.c Tue Nov 28 22:50:07 2000
+--- src/version.c Tue Nov 28 22:49:21 2000
+***************
+*** 439,440 ****
+--- 439,442 ----
+ { /* Add new patch number below this line */
++ /**/
++ 19,
+ /**/
+
+--
+Apologies for taking up the bandwidth with the apology. Anything else I
+can apologise for ...... er no can't think of anything, sorry about that.
+ Andy Hunt (Member of British Olympic Apology Squad)
+
+/// Bram Moolenaar Bram@moolenaar.net http://www.moolenaar.net \\\
+\\\ Vim: http://www.vim.org ICCF Holland: http://iccf-holland.org ///