forked from aniani/vim
updated for version 7.4.136
Problem: MS-Windows: When saving a file with a UNC path the file becomes read-only. Solution: Don't mix up Win32 attributes and Unix attributes. (Ken Takata)
This commit is contained in:
@@ -617,8 +617,22 @@ vim_stat(const char *name, struct stat *stp)
|
||||
p = buf + strlen(buf);
|
||||
if (p > buf)
|
||||
mb_ptr_back(buf, p);
|
||||
|
||||
/* Remove trailing '\\' except root path. */
|
||||
if (p > buf && (*p == '\\' || *p == '/') && p[-1] != ':')
|
||||
*p = NUL;
|
||||
|
||||
if ((buf[0] == '\\' && buf[1] == '\\') || (buf[0] == '/' && buf[1] == '/'))
|
||||
{
|
||||
/* UNC root path must be followed by '\\'. */
|
||||
p = vim_strpbrk(buf + 2, "\\/");
|
||||
if (p != NULL)
|
||||
{
|
||||
p = vim_strpbrk(p + 1, "\\/");
|
||||
if (p == NULL)
|
||||
STRCAT(buf, "\\");
|
||||
}
|
||||
}
|
||||
#ifdef FEAT_MBYTE
|
||||
if (enc_codepage >= 0 && (int)GetACP() != enc_codepage
|
||||
# ifdef __BORLANDC__
|
||||
|
Reference in New Issue
Block a user