updated for version 7.0072
diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
index de68e19..4d4ea22 100644
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -296,8 +296,6 @@
!endif
CFLAGS = $(CFLAGS) $(OPTFLAG) -DNDEBUG $(CPUARG)
RCFLAGS = $(rcflags) $(rcvars) -DNDEBUG
-PDB =
-LINK_PDB =
! ifdef USE_MSVCRT
CFLAGS = $(CFLAGS) -MD
LIBC = msvcrt.lib
@@ -308,13 +306,7 @@
! endif
!else # DEBUG
VIM = vimd
-# MSVC 4.1
-PDB = /Fd$(OUTDIR)/
-LINK_PDB = /PDB:$(OUTDIR)/
-# MSVC 2.2
-# PDB = /Fd$(OUTDIR)/vim.pdb
-# LINK_PDB = /PDB:$(OUTDIR)/vim.pdb
-CFLAGS = $(CFLAGS) -D_DEBUG -DDEBUG /Zi /Od
+CFLAGS = $(CFLAGS) -D_DEBUG -DDEBUG /Od
RCFLAGS = $(rcflags) $(rcvars) -D_DEBUG -DDEBUG
# The /fixed:no is needed for Quantify. Assume not 4.? as unsupported in VC4.0.
! if "$(_NMAKE_VER)" == ""
@@ -620,7 +612,15 @@
CFLAGS = $(CFLAGS) -DFEAT_$(FEATURES)
#
-# End extra featuare include
+# Always generate the .pdb file, so that we get debug symbols that can be used
+# on a crash (doesn't add overhead to the executable).
+#
+CFLAGS = $(CFLAGS) /Zi
+PDB = /Fd$(OUTDIR)/
+LINK_PDB = /PDB:$(OUTDIR)/$(VIM).pdb -debug:full -debugtype:cv,fixup
+
+#
+# End extra feature include
#
!message
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 76fafef..38a7d44 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -7815,8 +7815,8 @@
|| *arg == '"')
{
redir_reg = *arg++;
- if (*arg == '>')
- ++arg;
+ if (*arg == '>' && arg[1] == '>')
+ arg += 2;
else if (*arg == NUL && (islower(redir_reg)
# ifdef FEAT_CLIPBOARD
|| redir_reg == '*'
@@ -7829,8 +7829,8 @@
}
if (*arg != NUL)
{
- EMSG2(_(e_invarg2), eap->arg);
redir_reg = 0;
+ EMSG2(_(e_invarg2), eap->arg);
}
}
else if (*arg == '=' && arg[1] == '>')
diff --git a/src/normal.c b/src/normal.c
index e5404ef..ec38db2 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -3929,13 +3929,17 @@
int save_p_scs;
char_u *ptr;
- if ((len = find_ident_under_cursor(&ptr, FIND_IDENT)) == 0 ||
- (pat = alloc(len + 5)) == NULL)
+ if ((len = find_ident_under_cursor(&ptr, FIND_IDENT)) == 0
+ || (pat = alloc(len + 7)) == NULL)
{
clearopbeep(oap);
return;
}
- sprintf((char *)pat, vim_iswordp(ptr) ? "\\<%.*s\\>" : "%.*s", len, ptr);
+
+ /* Put "\V" before the pattern to avoid that the special meaning of "."
+ * and "~" causes trouble. */
+ sprintf((char *)pat, vim_iswordp(ptr) ? "\\V\\<%.*s\\>" : "\\V%.*s",
+ len, ptr);
old_pos = curwin->w_cursor;
save_p_ws = p_ws;
save_p_scs = p_scs;
diff --git a/src/testdir/Make_os2.mak b/src/testdir/Make_os2.mak
index 235e147..3f63cec 100644
--- a/src/testdir/Make_os2.mak
+++ b/src/testdir/Make_os2.mak
@@ -23,7 +23,8 @@
test33.out test34.out test35.out test36.out test37.out \
test38.out test39.out test40.out test41.out test42.out \
test43.out test44.out test45.out test46.out test47.out \
- test48.out test51.out test53.out test54.out test55.out
+ test48.out test51.out test53.out test54.out test55.out \
+ test56.out
.SUFFIXES: .in .out
diff --git a/src/vim.h b/src/vim.h
index fde8ac1..ab2bb42 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -1227,7 +1227,15 @@
#define LSIZE 512 /* max. size of a line in the tags file */
#define IOSIZE (1024+1) /* file i/o and sprintf buffer size */
-#define MSG_BUF_LEN 80 /* length of buffer for small messages */
+
+#ifdef FEAT_MBYTE
+# define MSG_BUF_LEN 480 /* length of buffer for small messages */
+# define MSG_BUF_CLEN (MSG_BUF_LEN / 6) /* cell length (worst case: utf-8
+ takes 6 bytes for one cell) */
+#else
+# define MSG_BUF_LEN 80 /* length of buffer for small messages */
+# define MSG_BUF_CLEN MSG_BUF_LEN /* cell length */
+#endif
#if defined(AMIGA) || defined(__linux__) || defined(__QNX__) || defined(__CYGWIN32__) || defined(_AIX)
# define TBUFSZ 2048 /* buffer size for termcap entry */