Make setting NNN_TMPFILE explicit

This commit is contained in:
Arun Prakash Jana 2018-09-02 19:04:45 +05:30
parent 2beea9bce8
commit 7d065ff22d
No known key found for this signature in database
GPG Key ID: A75979F35C080412
1 changed files with 10 additions and 14 deletions

24
nnn.c
View File

@ -2408,7 +2408,7 @@ browse(char *ipath, char *ifilter)
static char oldname[NAME_MAX + 1] __attribute__ ((aligned));
char *dir, *tmp, *run = NULL, *env = NULL;
struct stat sb;
int r, fd, presel, ncp = 0, copystartid = 0, copyendid = 0;
int r, fd, truecd, presel, ncp = 0, copystartid = 0, copyendid = 0;
enum action sel = SEL_RUNARG + 1;
bool dir_changed = FALSE;
@ -2609,18 +2609,17 @@ nochange:
break;
case SEL_CD:
{
int truecd = 0;
truecd = 0;
tmp = xreadline(NULL, "cd: ");
if (tmp == NULL || tmp[0] == '\0')
break;
if (tmp[0] == '~') {
/* Expand ~ to HOME absolute path */
char *home = getenv("HOME");
char *dir = getenv("HOME");
if (home)
snprintf(newpath, PATH_MAX, "%s%s", home, tmp + 1);
if (dir)
snprintf(newpath, PATH_MAX, "%s%s", dir, tmp + 1);
else {
printmsg(messages[STR_NOHOME_ID]);
goto nochange;
@ -3242,13 +3241,13 @@ nochange:
#endif
case SEL_CDQUIT:
{
char *tmpfile = "/tmp/nnn";
tmp = getenv("NNN_TMPFILE");
if (tmp)
tmpfile = tmp;
if (!tmp) {
printmsg("set NNN_TMPFILE");
goto nochange;
}
FILE *fp = fopen(tmpfile, "w");
FILE *fp = fopen(tmp, "w");
if (fp) {
fprintf(fp, "cd \"%s\"", path);
@ -3386,9 +3385,6 @@ main(int argc, char *argv[])
fprintf(stderr, "kqueue init! %s\n", strerror(errno));
exit(1);
}
gtimeout.tv_sec = 0;
gtimeout.tv_nsec = 0;
#endif
/* Edit text in EDITOR, if opted */