mirror of
https://github.com/MariaDB/server.git
synced 2025-01-19 13:32:33 +01:00
Merge pilot.mysql.com:/data/msvensson/mysql/my51-mtr-sol
into pilot.mysql.com:/data/msvensson/mysql/mysql-5.1-mtr
This commit is contained in:
commit
7a6913943b
1 changed files with 6 additions and 7 deletions
|
@ -89,7 +89,6 @@ static void die(const char* fmt, ...)
|
|||
|
||||
static void kill_child (void)
|
||||
{
|
||||
int exit_code= 1;
|
||||
int status= 0;
|
||||
|
||||
message("Killing child: %d", child_pid);
|
||||
|
@ -99,6 +98,7 @@ static void kill_child (void)
|
|||
pid_t ret_pid= waitpid(child_pid, &status, 0);
|
||||
if (ret_pid == child_pid)
|
||||
{
|
||||
int exit_code= 1;
|
||||
if (WIFEXITED(status))
|
||||
{
|
||||
// Process has exited, collect return status
|
||||
|
@ -113,7 +113,7 @@ static void kill_child (void)
|
|||
|
||||
exit(exit_code);
|
||||
}
|
||||
exit(exit_code);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -122,13 +122,12 @@ static void handle_signal (int sig)
|
|||
message("Got signal %d, child_pid: %d", sig, child_pid);
|
||||
terminated= 1;
|
||||
|
||||
if (child_pid > 0)
|
||||
kill_child();
|
||||
|
||||
// Ignore further signals
|
||||
signal(SIGTERM, SIG_IGN);
|
||||
signal(SIGINT, SIG_IGN);
|
||||
signal(SIGCHLD, SIG_IGN);
|
||||
|
||||
if (child_pid > 0)
|
||||
kill_child();
|
||||
|
||||
// Continune execution, allow the child to be started and
|
||||
// finally terminated by monitor loop
|
||||
|
@ -237,7 +236,7 @@ int main(int argc, char* const argv[] )
|
|||
break;
|
||||
}
|
||||
|
||||
// Check if child has exited, normally this wil be
|
||||
// Check if child has exited, normally this will be
|
||||
// detected immediately with SIGCHLD handler
|
||||
int status= 0;
|
||||
pid_t ret_pid= waitpid(child_pid, &status, WNOHANG);
|
||||
|
|
Loading…
Reference in a new issue