From 2e750973e936a04d9effea88f78f03a5a07ab282 Mon Sep 17 00:00:00 2001 From: ZyX Date: Sat, 17 Oct 2015 15:41:05 +0300 Subject: shada: Move shada file to a new location --- src/nvim/shada.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'src/nvim/shada.c') diff --git a/src/nvim/shada.c b/src/nvim/shada.c index 523f8db6f0..6fd13a88b7 100644 --- a/src/nvim/shada.c +++ b/src/nvim/shada.c @@ -1583,6 +1583,20 @@ shada_read_main_cycle_end: kh_dealloc(strset, &oldfiles_set); } +/// Default shada file location: cached path +static char *default_shada_file = NULL; + +/// Get the default ShaDa file +static const char *shada_get_default_file(void) + FUNC_ATTR_WARN_UNUSED_RESULT +{ + if (default_shada_file == NULL) { + char *shada_dir = stdpaths_user_data_subpath("shada"); + default_shada_file = concat_fnames_realloc(shada_dir, "main.shada", true); + } + return default_shada_file; +} + /// Get the ShaDa file name to use /// /// If "file" is given and not empty, use it (has already been expanded by @@ -1608,11 +1622,11 @@ static char *shada_filename(const char *file) if (STRCMP("$VIM", NameBuff) != 0) { // $VIM was expanded file = SHADA_FILE2; } else { - file = SHADA_FILE; + file = shada_get_default_file(); } } else { #endif - file = SHADA_FILE; + file = shada_get_default_file(); #ifdef SHADA_FILE2 } #endif -- cgit From a82a059921f36fb580026ef4cc31f64c110d07b7 Mon Sep 17 00:00:00 2001 From: ZyX Date: Sat, 17 Oct 2015 21:46:30 +0300 Subject: option: Add `//` to the end of default `&directory` --- src/nvim/shada.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/nvim/shada.c') diff --git a/src/nvim/shada.c b/src/nvim/shada.c index 6fd13a88b7..d6cbba4b12 100644 --- a/src/nvim/shada.c +++ b/src/nvim/shada.c @@ -1591,7 +1591,7 @@ static const char *shada_get_default_file(void) FUNC_ATTR_WARN_UNUSED_RESULT { if (default_shada_file == NULL) { - char *shada_dir = stdpaths_user_data_subpath("shada"); + char *shada_dir = stdpaths_user_data_subpath("shada", 0); default_shada_file = concat_fnames_realloc(shada_dir, "main.shada", true); } return default_shada_file; -- cgit From 8642bad122dd8b79983d42fbdf12524db9236aa2 Mon Sep 17 00:00:00 2001 From: ZyX Date: Sat, 17 Oct 2015 22:12:21 +0300 Subject: shada: Remove SHADA_FILE2 --- src/nvim/shada.c | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) (limited to 'src/nvim/shada.c') diff --git a/src/nvim/shada.c b/src/nvim/shada.c index d6cbba4b12..bb79c183e6 100644 --- a/src/nvim/shada.c +++ b/src/nvim/shada.c @@ -1614,22 +1614,7 @@ static char *shada_filename(const char *file) file = used_shada_file; } else { if ((file = find_shada_parameter('n')) == NULL || *file == NUL) { -#ifdef SHADA_FILE2 - // don't use $HOME when not defined (turned into "c:/"!). - if (os_getenv((char_u *)"HOME") == NULL) { - // don't use $VIM when not available. - expand_env((char_u *)"$VIM", NameBuff, MAXPATHL); - if (STRCMP("$VIM", NameBuff) != 0) { // $VIM was expanded - file = SHADA_FILE2; - } else { - file = shada_get_default_file(); - } - } else { -#endif - file = shada_get_default_file(); -#ifdef SHADA_FILE2 - } -#endif + file = shada_get_default_file(); } // XXX It used to be one level lower, so that whatever is in // `used_shada_file` was expanded. I intentionally moved it here -- cgit