diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 8bb990a..3e24133 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -2832,11 +2832,13 @@
 		For most systems the characters escaped are
 		" \t\n*?[{`$\\%#'\"|!<".  For systems where a backslash
 		appears in a filename, it depends on the value of 'isfname'.
+		A leading '+' and '>' is also escaped (special after |:edit|
+		and |:write|).  And a "-" by itself (special after |:cd|).
 		Example: >
-			:let fname = 'some str%nge|name'
+			:let fname = '+some str%nge|name'
 			:exe "edit " . fnameescape(fname)
 <		results in executing: >
-			edit some\ str\%nge\|name
+			edit \+some\ str\%nge\|name
 
 fnamemodify({fname}, {mods})				*fnamemodify()*
 		Modify file name {fname} according to {mods}.  {mods} is a
diff --git a/src/ex_getln.c b/src/ex_getln.c
index c9760d1..994fe2a 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -3717,7 +3717,7 @@
 	if ((*p != '[' && *p != '{') || !vim_isfilec(*p))
 	    buf[j++] = *p;
     buf[j] = NUL;
-    return vim_strsave_escaped(fname, buf);
+    p = vim_strsave_escaped(fname, buf);
 #else
     p = vim_strsave_escaped(fname, shell ? SHELL_ESC_CHARS : PATH_ESC_CHARS);
     if (shell && csh_like_shell() && p != NULL)
@@ -3730,8 +3730,14 @@
 	vim_free(p);
 	p = s;
     }
-    return p;
 #endif
+
+    /* '>' and '+' are special at the start of some commands, e.g. ":edit" and
+     * ":write".  "cd -" has a special meaning. */
+    if (*p == '>' || *p == '+' || (*p == '-' && p[1] == NUL))
+	escape_fname(&p);
+
+    return p;
 }
 
 /*
diff --git a/src/version.c b/src/version.c
index c8565c4..6730cc0 100644
--- a/src/version.c
+++ b/src/version.c
@@ -677,6 +677,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2,
+/**/
     1,
 /**/
     0
