summaryrefslogtreecommitdiff
path: root/src/misc1.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/misc1.c')
-rw-r--r--src/misc1.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/misc1.c b/src/misc1.c
index 635b87be2..80aefd812 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -14,6 +14,10 @@
#include "vim.h"
#include "version.h"
+#if defined(__HAIKU__)
+# include <storage/FindDirectory.h>
+#endif
+
#if defined(MSWIN)
# include <lm.h>
#endif
@@ -1667,6 +1671,18 @@ vim_getenv(char_u *name, int *mustfree)
// handling $VIMRUNTIME and $VIM is below, bail out if it's another name.
vimruntime = (STRCMP(name, "VIMRUNTIME") == 0);
if (!vimruntime && STRCMP(name, "VIM") != 0)
+#if defined(__HAIKU__)
+ // special handling for user settings directory...
+ if (STRCMP(name, "BE_USER_SETTINGS") == 0)
+ {
+ static char userSettingsPath[MAXPATHL] = {0};
+
+ if (B_OK == find_directory(B_USER_SETTINGS_DIRECTORY, 0,
+ false, userSettingsPath, MAXPATHL))
+ return userSettingsPath;
+ }
+ else
+#endif
return NULL;
/*