0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

updated for version 7.2.429

Problem:    A file that exists but access is denied may result in a "new file"
            message.  E.g. when its directory is unreadable.
Solution:   Specifically check for ENOENT to decide a file doesn't exist.
            (partly by James Vega)
This commit is contained in:
Bram Moolenaar 2010-05-14 18:56:38 +02:00
parent f9ddb94283
commit 2efbc66e26
2 changed files with 10 additions and 1 deletions

View File

@ -595,7 +595,11 @@ readfile(fname, sfname, from, lines_to_skip, lines_to_read, eap, flags)
#endif
if (newfile)
{
if (perm < 0)
if (perm < 0
#ifdef ENOENT
&& errno == ENOENT
#endif
)
{
/*
* Set the 'new-file' flag, so that when the file has
@ -663,6 +667,9 @@ readfile(fname, sfname, from, lines_to_skip, lines_to_read, eap, flags)
filemess(curbuf, sfname, (char_u *)(
# ifdef EFBIG
(errno == EFBIG) ? _("[File too big]") :
# endif
# ifdef EOVERFLOW
(errno == EOVERFLOW) ? _("[File too big]") :
# endif
_("[Permission Denied]")), 0);
curbuf->b_p_ro = TRUE; /* must use "w!" now */

View File

@ -681,6 +681,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
429,
/**/
428,
/**/