summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.419
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/vim/patches/7.3.419')
-rw-r--r--source/ap/vim/patches/7.3.41985
1 files changed, 85 insertions, 0 deletions
diff --git a/source/ap/vim/patches/7.3.419 b/source/ap/vim/patches/7.3.419
new file mode 100644
index 000000000..865a47c75
--- /dev/null
+++ b/source/ap/vim/patches/7.3.419
@@ -0,0 +1,85 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 7.3.419
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.419
+Problem: DBCS encoding in a user command does not always work.
+Solution: Skip over DBCS characters. (Yasuhiro Matsumoto)
+Files: src/ex_docmd.c
+
+
+*** ../vim-7.3.418/src/ex_docmd.c 2011-12-14 14:49:41.000000000 +0100
+--- src/ex_docmd.c 2012-01-26 20:04:01.000000000 +0100
+***************
+*** 5967,5973 ****
+ result = STRLEN(eap->arg) + 2;
+ for (p = eap->arg; *p; ++p)
+ {
+! if (*p == '\\' || *p == '"')
+ ++result;
+ }
+
+--- 5967,5980 ----
+ result = STRLEN(eap->arg) + 2;
+ for (p = eap->arg; *p; ++p)
+ {
+! #ifdef FEAT_MBYTE
+! if (enc_dbcs != 0 && (*mb_ptr2len)(p) == 2)
+! /* DBCS can contain \ in a trail byte, skip the
+! * double-byte character. */
+! ++p;
+! else
+! #endif
+! if (*p == '\\' || *p == '"')
+ ++result;
+ }
+
+***************
+*** 5976,5982 ****
+ *buf++ = '"';
+ for (p = eap->arg; *p; ++p)
+ {
+! if (*p == '\\' || *p == '"')
+ *buf++ = '\\';
+ *buf++ = *p;
+ }
+--- 5983,5996 ----
+ *buf++ = '"';
+ for (p = eap->arg; *p; ++p)
+ {
+! #ifdef FEAT_MBYTE
+! if (enc_dbcs != 0 && (*mb_ptr2len)(p) == 2)
+! /* DBCS can contain \ in a trail byte, copy the
+! * double-byte character to avoid escaping. */
+! *buf++ = *p++;
+! else
+! #endif
+! if (*p == '\\' || *p == '"')
+ *buf++ = '\\';
+ *buf++ = *p;
+ }
+*** ../vim-7.3.418/src/version.c 2012-01-26 18:58:25.000000000 +0100
+--- src/version.c 2012-01-26 20:40:34.000000000 +0100
+***************
+*** 716,717 ****
+--- 716,719 ----
+ { /* Add new patch number below this line */
++ /**/
++ 419,
+ /**/
+
+--
+You have heard the saying that if you put a thousand monkeys in a room with a
+thousand typewriters and waited long enough, eventually you would have a room
+full of dead monkeys.
+ (Scott Adams - The Dilbert principle)
+
+ /// 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 ///