diff options
author | Jordyn/The Linux Geek <onlinecloud1@gmail.com> | 2017-11-04 18:13:41 -0500 |
---|---|---|
committer | Jordyn/The Linux Geek <onlinecloud1@gmail.com> | 2017-11-04 18:13:41 -0500 |
commit | 5f3360a217f28d1ba80fdf5db3167c87dd70449c (patch) | |
tree | c1631ba4f4d7a1b7eaf4e83b38cff450bf3c6a29 /src/commands/cmd_restart.cpp | |
parent | 7b7953aaf2aa0895604e57fe0136ba9a5831349c (diff) |
Fix CMD_RESTART with relative paths as argv[0].
Diffstat (limited to 'src/commands/cmd_restart.cpp')
-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)); } |