diff options
author | Peter Powell <petpow@saberuk.com> | 2017-11-05 22:43:36 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-11-05 22:43:36 +0000 |
commit | 473d990d6223723c60551d183ea0d7300c8af8df (patch) | |
tree | c1631ba4f4d7a1b7eaf4e83b38cff450bf3c6a29 | |
parent | 7b7953aaf2aa0895604e57fe0136ba9a5831349c (diff) | |
parent | 5f3360a217f28d1ba80fdf5db3167c87dd70449c (diff) |
Merge pull request #1410 from jcjordyn130/insp20
Fix CMD_RESTART with relative paths as argv[0].
-rw-r--r-- | src/commands/cmd_restart.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/commands/cmd_restart.cpp b/src/commands/cmd_restart.cpp index bdbcfed35..48f902d1e 100644 --- a/src/commands/cmd_restart.cpp +++ b/src/commands/cmd_restart.cpp @@ -47,7 +47,7 @@ CmdResult CommandRestart::Handle (const std::vector<std::string>& parameters, Us ServerInstance->SendError("Server restarting."); #ifndef _WIN32 - /* XXX: This hack sets FD_CLOEXEC on all possible file descriptors, so they're closed if the execv() below succeeds. + /* XXX: This hack sets FD_CLOEXEC on all possible file descriptors, so they're closed if the execvp() below succeeds. * Certainly, this is not a nice way to do things and it's slow when the fd limit is high. * * A better solution would be to set the close-on-exec flag for each fd we create (or create them with O_CLOEXEC), @@ -61,7 +61,7 @@ CmdResult CommandRestart::Handle (const std::vector<std::string>& parameters, Us } #endif - execv(ServerInstance->Config->cmdline.argv[0], ServerInstance->Config->cmdline.argv); + execvp(ServerInstance->Config->cmdline.argv[0], ServerInstance->Config->cmdline.argv); ServerInstance->SNO->WriteGlobalSno('a', "Failed RESTART - could not execute '%s' (%s)", ServerInstance->Config->cmdline.argv[0], strerror(errno)); } |