diff options
-rw-r--r-- | src/ex_cmds2.c | 8 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c index bfa322d870..1108ab9614 100644 --- a/src/ex_cmds2.c +++ b/src/ex_cmds2.c @@ -28,7 +28,8 @@ typedef struct scriptitem_S { char_u *sn_name; # ifdef UNIX - int sn_dev; + int sn_dev_valid; + dev_t sn_dev; ino_t sn_ino; # endif # ifdef FEAT_PROFILE @@ -3049,7 +3050,7 @@ do_source(fname, check_other, is_vimrc) /* Compare dev/ino when possible, it catches symbolic * links. Also compare file names, the inode may change * when the file was edited. */ - ((stat_ok && si->sn_dev != -1) + ((stat_ok && si->sn_dev_valid) && (si->sn_dev == st.st_dev && si->sn_ino == st.st_ino)) || # endif @@ -3076,11 +3077,12 @@ do_source(fname, check_other, is_vimrc) # ifdef UNIX if (stat_ok) { + si->sn_dev_valid = TRUE; si->sn_dev = st.st_dev; si->sn_ino = st.st_ino; } else - si->sn_dev = -1; + si->sn_dev_valid = FALSE; # endif /* Allocate the local script variables to use for this script. */ diff --git a/src/version.c b/src/version.c index 1a7c803e17..388065ed83 100644 --- a/src/version.c +++ b/src/version.c @@ -677,6 +677,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 179, +/**/ 178, /**/ 177, |