freebsd-ports/lang/gnu-apl/files/patch-src_UserPreferences.cc
Alexey Dokuchaev c3498adb1a - Install preferences file as sample and annotate accordingly
- Teach the code to expand tilde (~) to $(HOME) to prevent
  spamming every current directory with `.apl.history' file
- Fix some minor C[XX]FLAGS pollution while I'm here
2019-07-04 11:18:42 +00:00

29 lines
1.2 KiB
C++

--- src/UserPreferences.cc.orig 2019-06-23 12:39:20 UTC
+++ src/UserPreferences.cc
@@ -1299,7 +1299,25 @@ int file_profile = 0; // the current profile in the
}
else if (!strcasecmp(opt, "READLINE_HISTORY_PATH"))
{
- line_history_path = UTF8_string(arg);
+ // If 'arg' starts with "~/", expand ~ -> $HOME
+ if (arg[0] == '~' && arg[1] == '/')
+ {
+ const char * HOME = getenv("HOME");
+ if (HOME == 0)
+ {
+ if (log_startup)
+ CERR << "environment variable 'HOME' is not "
+ "defined for '~' expansion, will use "
+ << (arg + 2) << endl;
+ line_history_path = UTF8_string(arg + 2);
+ }
+ else
+ {
+ line_history_path = UTF8_string(HOME);
+ line_history_path.append_ASCII(arg + 1);
+ }
+ }
+ else line_history_path = UTF8_string(arg);
}
else if (!strcasecmp(opt, "NABLA-TO-HISTORY"))
{