aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorZyX <kp-pav@yandex.ru>2015-10-17 21:46:30 +0300
committerZyX <kp-pav@yandex.ru>2015-10-23 14:54:11 +0300
commita82a059921f36fb580026ef4cc31f64c110d07b7 (patch)
tree77b2761f4c37b5c7485058f0324846cf22b65fca /src
parentaadaa1fed4d471fc2e286b0ffa151c006482389e (diff)
downloadrneovim-a82a059921f36fb580026ef4cc31f64c110d07b7.tar.gz
rneovim-a82a059921f36fb580026ef4cc31f64c110d07b7.tar.bz2
rneovim-a82a059921f36fb580026ef4cc31f64c110d07b7.zip
option: Add `//` to the end of default `&directory`
Diffstat (limited to 'src')
-rw-r--r--src/nvim/option.c9
-rw-r--r--src/nvim/os/stdpaths.c13
-rw-r--r--src/nvim/shada.c2
3 files changed, 17 insertions, 7 deletions
diff --git a/src/nvim/option.c b/src/nvim/option.c
index 9fa8a6539e..9089947803 100644
--- a/src/nvim/option.c
+++ b/src/nvim/option.c
@@ -698,10 +698,11 @@ void set_init_1(void)
#endif
false);
- set_string_default("viewdir", stdpaths_user_data_subpath("view"), true);
- set_string_default("backupdir", stdpaths_user_data_subpath("backup"), true);
- set_string_default("directory", stdpaths_user_data_subpath("swap"), true);
- set_string_default("undodir", stdpaths_user_data_subpath("undo"), true);
+ set_string_default("viewdir", stdpaths_user_data_subpath("view", 0), true);
+ set_string_default("backupdir", stdpaths_user_data_subpath("backup", 0),
+ true);
+ set_string_default("directory", stdpaths_user_data_subpath("swap", 2), true);
+ set_string_default("undodir", stdpaths_user_data_subpath("undo", 0), true);
// Set default for &runtimepath. All necessary expansions are performed in
// this function.
set_runtimepath_default();
diff --git a/src/nvim/os/stdpaths.c b/src/nvim/os/stdpaths.c
index 0ed7aec2a6..d4bff65312 100644
--- a/src/nvim/os/stdpaths.c
+++ b/src/nvim/os/stdpaths.c
@@ -92,10 +92,19 @@ char *stdpaths_user_conf_subpath(const char *fname)
/// Return subpath of $XDG_DATA_HOME
///
/// @param[in] fname New component of the path.
+/// @param[in] trailing_pathseps Amount of trailing path separators to add.
///
/// @return [allocated] `$XDG_DATA_HOME/nvim/{fname}`
-char *stdpaths_user_data_subpath(const char *fname)
+char *stdpaths_user_data_subpath(const char *fname,
+ const size_t trailing_pathseps)
FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_NONNULL_ALL
{
- return concat_fnames_realloc(get_xdg_home(kXDGDataHome), fname, true);
+ char *ret = concat_fnames_realloc(get_xdg_home(kXDGDataHome), fname, true);
+ if (trailing_pathseps) {
+ const size_t len = strlen(ret);
+ ret = xrealloc(ret, len + trailing_pathseps + 1);
+ memset(ret + len, PATHSEP, trailing_pathseps);
+ ret[len + trailing_pathseps] = NUL;
+ }
+ return ret;
}
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;