|
@@ -213,7 +213,7 @@ typedef struct { |
|
|
uint copymode : 1; /* Set when copying files */ |
|
|
uint copymode : 1; /* Set when copying files */ |
|
|
uint showdetail : 1; /* Clear to show fewer file info */ |
|
|
uint showdetail : 1; /* Clear to show fewer file info */ |
|
|
uint ctxactive : 1; /* Context active or not */ |
|
|
uint ctxactive : 1; /* Context active or not */ |
|
|
uint reserved : 8; |
|
|
|
|
|
|
|
|
uint reserved : 7; |
|
|
/* The following settings are global */ |
|
|
/* The following settings are global */ |
|
|
uint curctx : 2; /* Current context number */ |
|
|
uint curctx : 2; /* Current context number */ |
|
|
uint dircolor : 1; /* Current status of dir color */ |
|
|
uint dircolor : 1; /* Current status of dir color */ |
|
@@ -228,6 +228,7 @@ typedef struct { |
|
|
uint filter_re : 1; /* Use regex filters */ |
|
|
uint filter_re : 1; /* Use regex filters */ |
|
|
uint wild : 1; /* Do not sort entries on dir load */ |
|
|
uint wild : 1; /* Do not sort entries on dir load */ |
|
|
uint trash : 1; /* Move removed files to trash */ |
|
|
uint trash : 1; /* Move removed files to trash */ |
|
|
|
|
|
uint badexit : 1; /* Program quit due to dir removed or moved */ |
|
|
} settings; |
|
|
} settings; |
|
|
|
|
|
|
|
|
/* Contexts or workspaces */ |
|
|
/* Contexts or workspaces */ |
|
@@ -267,6 +268,7 @@ static settings cfg = { |
|
|
1, /* filter_re */ |
|
|
1, /* filter_re */ |
|
|
0, /* wild */ |
|
|
0, /* wild */ |
|
|
0, /* trash */ |
|
|
0, /* trash */ |
|
|
|
|
|
0, /* badexit */ |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
static context g_ctx[CTX_MAX] __attribute__ ((aligned)); |
|
|
static context g_ctx[CTX_MAX] __attribute__ ((aligned)); |
|
@@ -3241,8 +3243,11 @@ nochange: |
|
|
_exit(0); |
|
|
_exit(0); |
|
|
|
|
|
|
|
|
/* Check if CWD is deleted to avoid hang, bad idea */ |
|
|
/* Check if CWD is deleted to avoid hang, bad idea */ |
|
|
//if (access(path, F_OK)) |
|
|
|
|
|
// return; |
|
|
|
|
|
|
|
|
if (access(path, F_OK)) { |
|
|
|
|
|
DPRINTF_S("dir deleted or moved"); |
|
|
|
|
|
cfg.badexit = 1; |
|
|
|
|
|
return; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
sel = nextsel(presel); |
|
|
sel = nextsel(presel); |
|
|
if (presel) |
|
|
if (presel) |
|
@@ -4692,6 +4697,9 @@ int main(int argc, char *argv[]) |
|
|
browse(initpath); |
|
|
browse(initpath); |
|
|
exitcurses(); |
|
|
exitcurses(); |
|
|
|
|
|
|
|
|
|
|
|
if (cfg.badexit) |
|
|
|
|
|
xerror(); |
|
|
|
|
|
|
|
|
#ifndef NORL |
|
|
#ifndef NORL |
|
|
write_history(NULL); |
|
|
write_history(NULL); |
|
|
#endif |
|
|
#endif |
|
|