Windows: Remove unnecessary codepath from modname.

File names starting with periods are perfectly acceptable on Windows
file systems. The only place where this is not acceptable is on
MS-DOS FAT file systems which only support 8.3 file names.

See here:
https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247%28v=vs.85%29.aspx

Since Neovim does not support MS-DOS or 8.3 file names (#605)
we can drop this codepath.

It was not compiling anyways since we do not define WIN3264.
This commit is contained in:
Seth Jackson 2015-12-11 20:12:13 -05:00
parent 81960df9f5
commit 7f8365e302

View File

@ -4331,8 +4331,6 @@ void shorten_fnames(int force)
/// @return [allocated] - A new filename, made up from:
/// * fname + ext, if fname not NULL.
/// * current dir + ext, if fname is NULL.
/// On Windows, and if ext starts with ".", a "_" is
/// preprended to ext (for filename to be valid).
/// Result is guaranteed to:
/// * be ended by <ext>.
/// * have a basename with at most BASENAMELEN chars:
@ -4386,15 +4384,6 @@ char *modname(const char *fname, const char *ext, bool prepend_dot)
char *s;
s = ptr + strlen(ptr);
#if defined(WIN3264)
// If there is no file name, and the extension starts with '.', put a
// '_' before the dot, because just ".ext" may be invalid if it's on a
// FAT partition, and on HPFS it doesn't matter.
else if ((fname == NULL || *fname == NUL) && *ext == '.') {
*s++ = '_';
}
#endif
// Append the extension.
// ext can start with '.' and cannot exceed 3 more characters.
strcpy(s, ext);