X-Git-Url: https://git.decadent.org.uk/gitweb/?p=odhcp6c.git;a=blobdiff_plain;f=src%2Fscript.c;h=f272c190afdaa3eb07a20c6c8c9a001557b717de;hp=3d313cf4964e6ab2479a51c0ba062174258a7de7;hb=e23f12f59182bec966c79c65dec034b8084ff8db;hpb=dc186d6d2b0dd4ad23ca5fc69c00e81f796ff6d9 diff --git a/src/script.c b/src/script.c index 3d313cf..f272c19 100644 --- a/src/script.c +++ b/src/script.c @@ -353,13 +353,15 @@ static void s46_to_env(enum odhcp6c_state state, const uint8_t *data, size_t len void script_call(const char *status, int delay, bool resume) { time_t now = odhcp6c_get_milli_time() / 1000; + bool running_script = false; if (running) { kill(running, SIGTERM); delay -= now - started; + running_script = true; } - if (resume || !action[0]) + if (resume || !running_script || !action[0]) strncpy(action, status, sizeof(action) - 1); pid_t pid = fork();