unix: don't assert on UV_PROCESS_WINDOWS_* flags
UV_PROCESS_WINDOWS_HIDE_CONSOLE and UV_PROCESS_WINDOWS_HIDE_GUI were
whitelisted on Windows but not Unices. Now they are.
Bug introduced in commit 4c2dcca27 ("win: support more fine-grained
windows hiding") which I reviewed but where I failed to spot it. Mea
culpa.
Fixes: https://github.com/libuv/libuv/issues/2266
PR-URL: https://github.com/libuv/libuv/pull/2278
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Kyle Edwards <kyle.edwards@kitware.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
This commit is contained in:
parent
cb30144f52
commit
a74e54bc8f
@ -431,6 +431,8 @@ int uv_spawn(uv_loop_t* loop,
|
||||
UV_PROCESS_SETGID |
|
||||
UV_PROCESS_SETUID |
|
||||
UV_PROCESS_WINDOWS_HIDE |
|
||||
UV_PROCESS_WINDOWS_HIDE_CONSOLE |
|
||||
UV_PROCESS_WINDOWS_HIDE_GUI |
|
||||
UV_PROCESS_WINDOWS_VERBATIM_ARGUMENTS)));
|
||||
|
||||
uv__handle_init(loop, (uv_handle_t*)process, UV_PROCESS);
|
||||
|
||||
@ -1406,6 +1406,12 @@ TEST_IMPL(spawn_setuid_fails) {
|
||||
options.flags |= UV_PROCESS_SETUID;
|
||||
options.uid = 0;
|
||||
|
||||
/* These flags should be ignored on Unices. */
|
||||
options.flags |= UV_PROCESS_WINDOWS_HIDE;
|
||||
options.flags |= UV_PROCESS_WINDOWS_HIDE_CONSOLE;
|
||||
options.flags |= UV_PROCESS_WINDOWS_HIDE_GUI;
|
||||
options.flags |= UV_PROCESS_WINDOWS_VERBATIM_ARGUMENTS;
|
||||
|
||||
r = uv_spawn(uv_default_loop(), &process, &options);
|
||||
#if defined(__CYGWIN__)
|
||||
ASSERT(r == UV_EINVAL);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user