diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/nvim/diff.c | 4 | ||||
| -rw-r--r-- | src/nvim/fileio.c | 29 | ||||
| -rw-r--r-- | src/nvim/globals.h | 2 | ||||
| -rw-r--r-- | src/nvim/memline.c | 2 | ||||
| -rw-r--r-- | src/nvim/os/os.h | 7 | ||||
| -rw-r--r-- | src/nvim/os/unix_defs.h | 7 | ||||
| -rw-r--r-- | src/nvim/os/win_defs.h | 9 | ||||
| -rw-r--r-- | src/nvim/os_unix_defs.h | 3 | 
8 files changed, 28 insertions, 35 deletions
| diff --git a/src/nvim/diff.c b/src/nvim/diff.c index e7feacd4fb..0ae3d5553e 100644 --- a/src/nvim/diff.c +++ b/src/nvim/diff.c @@ -893,15 +893,11 @@ void ex_diffpatch(exarg_T *eap)        || (os_chdir((char *)dirbuf) != 0)) {      dirbuf[0] = NUL;    } else { -# ifdef TEMPDIRNAMES      if (vim_tempdir != NULL) {        ignored = os_chdir((char *)vim_tempdir);      } else {        ignored = os_chdir("/tmp");      } -# else -    ignored = os_chdir("/tmp"); -# endif  // ifdef TEMPDIRNAMES      shorten_fnames(TRUE);    }  #endif  // ifdef UNIX diff --git a/src/nvim/fileio.c b/src/nvim/fileio.c index e9a1545846..8dcc066258 100644 --- a/src/nvim/fileio.c +++ b/src/nvim/fileio.c @@ -5156,7 +5156,6 @@ void write_lnum_adjust(linenr_T offset)      curbuf->b_no_eol_lnum += offset;  } -#if defined(TEMPDIRNAMES) || defined(PROTO)  static long temp_count = 0;             /* Temp filename counter. */  /* @@ -5184,9 +5183,6 @@ void vim_deltempdir(void)    }  } -#endif - -#ifdef TEMPDIRNAMES  /*   * Directory "tempdir" was created.  Expand this name to a full path and put   * it in "vim_tempdir".  This avoids that using ":cd" would confuse us. @@ -5203,7 +5199,6 @@ static void vim_settempdir(char_u *tempdir)      free(buf);    }  } -#endif  /*   * vim_tempname(): Return a unique name that can be used for a temp file. @@ -5218,10 +5213,9 @@ vim_tempname (      int extra_char          /* char to use in the name instead of '?' */  )  { -  char_u itmp[TEMPNAMELEN]; +  char_u itmp[TEMP_FILE_PATH_MAXLEN]; -#ifdef TEMPDIRNAMES -  static char *(tempdirs[]) = {TEMPDIRNAMES}; +  static const char *temp_dirs[] = TEMP_DIR_NAMES;    int i;    /* @@ -5233,11 +5227,11 @@ vim_tempname (     */    if (vim_tempdir == NULL) {      /* -     * Try the entries in TEMPDIRNAMES to create the temp directory. +     * Try the entries in `TEMP_DIR_NAMES` to create the temp directory.       */ -    for (i = 0; i < (int)(sizeof(tempdirs) / sizeof(char *)); ++i) { +    for (i = 0; i < (int)(sizeof(temp_dirs) / sizeof(char *)); ++i) {        /* expand $TMP, leave room for "/v1100000/999999999" */ -      expand_env((char_u *)tempdirs[i], itmp, TEMPNAMELEN - 20); +      expand_env((char_u *)temp_dirs[i], itmp, TEMP_FILE_PATH_MAXLEN - 20);        if (os_isdir(itmp)) {                    /* directory exists */          add_pathsep(itmp); @@ -5259,19 +5253,6 @@ vim_tempname (    }    return NULL; - -#else /* TEMPDIRNAMES */ - -  char_u      *p; - -  STRCPY(itmp, TEMPNAME); -  if ((p = vim_strchr(itmp, '?')) != NULL) -    *p = extra_char; -  if (mktemp((char *)itmp) == NULL) -    return NULL; - -  return vim_strsave(itmp); -#endif /* TEMPDIRNAMES */  }  #if defined(BACKSLASH_IN_FILENAME) || defined(PROTO) diff --git a/src/nvim/globals.h b/src/nvim/globals.h index 871674907b..436ddb768d 100644 --- a/src/nvim/globals.h +++ b/src/nvim/globals.h @@ -536,10 +536,8 @@ EXTERN int ru_col;              /* column for ruler */  EXTERN int ru_wid;              /* 'rulerfmt' width of ruler when non-zero */  EXTERN int sc_col;              /* column for shown command */ -#ifdef TEMPDIRNAMES  EXTERN char_u   *vim_tempdir INIT(= NULL); /* Name of Vim's own temp dir.                                                Ends in a slash. */ -#endif  /*   * When starting or exiting some things are done differently (e.g. screen diff --git a/src/nvim/memline.c b/src/nvim/memline.c index 2fb404a148..f951eb9379 100644 --- a/src/nvim/memline.c +++ b/src/nvim/memline.c @@ -589,9 +589,7 @@ void ml_close_all(int del_file)      ml_close(buf, del_file && ((buf->b_flags & BF_PRESERVED) == 0                                 || vim_strchr(p_cpo, CPO_PRESERVE) == NULL));    spell_delete_wordlist();      /* delete the internal wordlist */ -#ifdef TEMPDIRNAMES    vim_deltempdir();             /* delete created temp directory */ -#endif  }  /* diff --git a/src/nvim/os/os.h b/src/nvim/os/os.h index b6148e72bf..b46989d9b4 100644 --- a/src/nvim/os/os.h +++ b/src/nvim/os/os.h @@ -7,10 +7,17 @@  #include "nvim/os/fs_defs.h"  #include "nvim/vim.h" +#ifdef WIN32 +# include "nvim/os/win_defs.h" +#else +# include "nvim/os/unix_defs.h" +#endif +  #ifdef INCLUDE_GENERATED_DECLARATIONS  # include "os/fs.h.generated.h"  # include "os/mem.h.generated.h"  # include "os/env.h.generated.h"  # include "os/users.h.generated.h"  #endif +  #endif  // NVIM_OS_OS_H diff --git a/src/nvim/os/unix_defs.h b/src/nvim/os/unix_defs.h new file mode 100644 index 0000000000..197a87bcc5 --- /dev/null +++ b/src/nvim/os/unix_defs.h @@ -0,0 +1,7 @@ +#ifndef NEOVIM_OS_UNIX_DEFS_H +#define NEOVIM_OS_UNIX_DEFS_H + +#define TEMP_DIR_NAMES {"$TMPDIR", "/tmp", ".", "$HOME"} +#define TEMP_FILE_PATH_MAXLEN 256 + +#endif  // NEOVIM_OS_UNIX_DEFS_H diff --git a/src/nvim/os/win_defs.h b/src/nvim/os/win_defs.h new file mode 100644 index 0000000000..49fcb64777 --- /dev/null +++ b/src/nvim/os/win_defs.h @@ -0,0 +1,9 @@ +#ifndef NEOVIM_OS_WIN_DEFS_H +#define NEOVIM_OS_WIN_DEFS_H + +#include <windows.h> + +#define TEMP_DIR_NAMES {"$TMP", "$TEMP", "$USERPROFILE", ""} +#define TEMP_FILE_PATH_MAXLEN _MAX_PATH + +#endif  // NEOVIM_OS_WIN_DEFS_H diff --git a/src/nvim/os_unix_defs.h b/src/nvim/os_unix_defs.h index 5ba9d2d98d..0d79117bfd 100644 --- a/src/nvim/os_unix_defs.h +++ b/src/nvim/os_unix_defs.h @@ -204,9 +204,6 @@    "~/.nvim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,~/.nvim/after"  #  endif -#  define TEMPDIRNAMES  "$TMPDIR", "/tmp", ".", "$HOME" -#  define TEMPNAMELEN    256 -  /* Special wildcards that need to be handled by the shell */  #define SPECIAL_WILDCHAR    "`'{" | 
