Bert Münnich 11 роки тому
джерело
коміт
9632dd88b9
1 змінених файлів з 6 додано та 4 видалено
  1. +6
    -4
      main.c

+ 6
- 4
main.c Переглянути файл

@@ -459,7 +459,7 @@ void key_handler(const char *key, unsigned int mask)
pid_t pid;
int retval, status, n = mode == MODE_IMAGE ? fileidx : tns.sel;
char *cmd = exec[EXEC_KEY].cmd, kstr[32];
struct stat oldstat, newstat;
struct stat oldst, newst;

if (cmd == NULL || key == NULL)
return;
@@ -469,7 +469,7 @@ void key_handler(const char *key, unsigned int mask)
mask & Mod1Mask ? "M-" : "",
mask & ShiftMask ? "S-" : "", key);

stat(files[n].path, &oldstat);
stat(files[n].path, &oldst);

if ((pid = fork()) == 0) {
execl(cmd, cmd, kstr, files[n].path, NULL);
@@ -486,10 +486,12 @@ void key_handler(const char *key, unsigned int mask)
if (WIFEXITED(status) == 0 || retval != 0)
warn("key handler exited with non-zero return value: %d", retval);

if (stat(files[n].path, &newstat) == 0 &&
memcmp(&oldstat, &newstat, sizeof(oldstat)) == 0)
if (stat(files[n].path, &newst) == 0 &&
memcmp(&oldst.st_mtime, &newst.st_mtime, sizeof(oldst.st_mtime)) == 0)
{
/* file has not changed */
win_set_cursor(&win, CURSOR_ARROW);
set_timeout(reset_cursor, TO_CURSOR_HIDE, true);
return;
}
if (mode == MODE_IMAGE) {


Завантаження…
Відмінити
Зберегти