summaryrefslogtreecommitdiffstats
path: root/ctdb/server/eventscript.c
diff options
context:
space:
mode:
Diffstat (limited to 'ctdb/server/eventscript.c')
-rw-r--r--ctdb/server/eventscript.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/ctdb/server/eventscript.c b/ctdb/server/eventscript.c
index 183e076420..a4292778f1 100644
--- a/ctdb/server/eventscript.c
+++ b/ctdb/server/eventscript.c
@@ -588,9 +588,13 @@ static int ctdb_run_event_script(struct ctdb_context *ctdb,
if (ret != -1) {
ret = WEXITSTATUS(ret);
}
- if (ret == 127) {
- ret = 0;
- DEBUG(DEBUG_ERR,("Script %s returned status 127. Someone just deleted it?\n", cmdstr));
+ if (ret == 127 || ret == 126) {
+ /* Re-check it... */
+ if (!check_executable(ctdb->event_script_dir,
+ current->name)) {
+ ret = 0;
+ DEBUG(DEBUG_ERR,("Script %s returned status 127. Someone just deleted it?\n", cmdstr));
+ }
}
if (!from_user && call == CTDB_EVENT_MONITOR) {