Browse Source

Add an api to check if copying possible

master
Arun Prakash Jana 6 years ago
parent
commit
2324e8e3e7
No known key found for this signature in database GPG Key ID: A75979F35C080412
1 changed files with 24 additions and 16 deletions
  1. +24
    -16
      src/nnn.c

+ 24
- 16
src/nnn.c View File

@@ -855,6 +855,29 @@ static bool showcplist()
return TRUE; return TRUE;
} }


static bool cpsafe()
{
/* Fail if copy file path not generated */
if (!g_cppath[0]) {
printmsg("copy file not found");
return FALSE;
}

/* Warn if selection not completed */
if (cfg.copymode) {
printmsg("finish selection first");
return FALSE;
}

/* Fail if copy file path isn't accessible */
if (access(g_cppath, R_OK) == -1) {
printmsg("empty selection list");
return FALSE;
}

return TRUE;
}

/* Initialize curses mode */ /* Initialize curses mode */
static bool initcurses(void) static bool initcurses(void)
{ {
@@ -3423,23 +3446,8 @@ nochange:
case SEL_MV: case SEL_MV:
case SEL_RMMUL: case SEL_RMMUL:
{ {
/* Fail if copy file path not generated */ if (!cpsafe())
if (!g_cppath[0]) {
printmsg("copy file not found");
goto nochange;
}

/* Warn if selection not completed */
if (cfg.copymode) {
printmsg("finish selection first");
goto nochange; goto nochange;
}

/* Fail if copy file path isn't accessible */
if (access(g_cppath, R_OK) == -1) {
printmsg("empty selection list");
goto nochange;
}


if (sel == SEL_CP) { if (sel == SEL_CP) {
snprintf(g_buf, CMD_LEN_MAX, snprintf(g_buf, CMD_LEN_MAX,


||||||
x
 
000:0
Loading…
Cancel
Save