diff options
author | Ivan <etircopyhdot@gmail.com> | 2021-09-06 20:35:34 +0300 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2022-05-12 07:13:45 -0700 |
commit | 78a1e6bc0060eec1afa7de099c4cee35ca35527f (patch) | |
tree | 1795ae99329c58f8e34f3828b888014afb1318f6 /src/nvim/log.c | |
parent | a1b663cce861a76f78d65aa538426d0cf635c379 (diff) | |
download | rneovim-78a1e6bc0060eec1afa7de099c4cee35ca35527f.tar.gz rneovim-78a1e6bc0060eec1afa7de099c4cee35ca35527f.tar.bz2 rneovim-78a1e6bc0060eec1afa7de099c4cee35ca35527f.zip |
feat(defaults): session data in $XDG_STATE_HOME #15583
See: https://gitlab.freedesktop.org/xdg/xdg-specs/-/commit/4f2884e16db35f2962d9b64312917c81be5cb54b
- Move session persistent data to $XDG_STATE_HOME Change 'directory',
'backupdir', 'undodir', 'viewdir' and 'shadafile' default location to
$XDG_STATE_HOME/nvim.
- Move logs to $XDG_STATE_HOME, too.
- Add stdpath('log') support.
Fixes: #14805
Diffstat (limited to 'src/nvim/log.c')
-rw-r--r-- | src/nvim/log.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/nvim/log.c b/src/nvim/log.c index 7d50ecf69e..815d53b570 100644 --- a/src/nvim/log.c +++ b/src/nvim/log.c @@ -51,7 +51,7 @@ static bool log_try_create(char *fname) /// Initializes path to log file. Sets $NVIM_LOG_FILE if empty. /// -/// Tries $NVIM_LOG_FILE, or falls back to $XDG_CACHE_HOME/nvim/log. Path to log +/// Tries $NVIM_LOG_FILE, or falls back to $XDG_STATE_HOME/nvim/log. Path to log /// file is cached, so only the first call has effect, unless first call was not /// successful. Failed initialization indicates either a bug in expand_env() /// or both $NVIM_LOG_FILE and $HOME environment variables are undefined. @@ -69,16 +69,16 @@ static bool log_path_init(void) || log_file_path[0] == '\0' || os_isdir((char_u *)log_file_path) || !log_try_create(log_file_path)) { - // Make kXDGCacheHome if it does not exist. - char *cachehome = get_xdg_home(kXDGCacheHome); + // Make kXDGStateHome if it does not exist. + char *loghome = get_xdg_home(kXDGStateHome); char *failed_dir = NULL; bool log_dir_failure = false; - if (!os_isdir((char_u *)cachehome)) { - log_dir_failure = (os_mkdir_recurse(cachehome, 0700, &failed_dir) != 0); + if (!os_isdir((char_u *)loghome)) { + log_dir_failure = (os_mkdir_recurse(loghome, 0700, &failed_dir) != 0); } - XFREE_CLEAR(cachehome); + XFREE_CLEAR(loghome); // Invalid $NVIM_LOG_FILE or failed to expand; fall back to default. - char *defaultpath = stdpaths_user_cache_subpath("log"); + char *defaultpath = stdpaths_user_state_subpath("log", 0, true); size_t len = xstrlcpy(log_file_path, defaultpath, size); xfree(defaultpath); // Fall back to .nvimlog |