diff options
-rw-r--r-- | src/fileio.c | 5 | ||||
-rw-r--r-- | src/os_mswin.c | 3 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 9 insertions, 1 deletions
diff --git a/src/fileio.c b/src/fileio.c index 0f3f148b9..20c029498 100644 --- a/src/fileio.c +++ b/src/fileio.c @@ -7547,7 +7547,8 @@ vim_tempname(extra_char, keep) #if defined(BACKSLASH_IN_FILENAME) || defined(PROTO) /* - * Convert all backslashes in fname to forward slashes in-place. + * Convert all backslashes in fname to forward slashes in-place, unless when + * it looks like a URL. */ void forward_slash(fname) @@ -7555,6 +7556,8 @@ forward_slash(fname) { char_u *p; + if (path_with_url(fname)) + return; for (p = fname; *p != NUL; ++p) # ifdef FEAT_MBYTE /* The Big5 encoding can have '\' in the trail byte. */ diff --git a/src/os_mswin.c b/src/os_mswin.c index b50b86c88..daf71a304 100644 --- a/src/os_mswin.c +++ b/src/os_mswin.c @@ -481,11 +481,14 @@ mch_isFullName(char_u *fname) * commands that use a file name should try to avoid the need to type a * backslash twice. * When 'shellslash' set do it the other way around. + * When the path looks like a URL leave it unmodified. */ void slash_adjust(p) char_u *p; { + if (path_with_url(p)) + return; while (*p) { if (*p == psepcN) diff --git a/src/version.c b/src/version.c index 746b62959..83bfe2b08 100644 --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 896, +/**/ 895, /**/ 894, |