updating WASI stdio handle initialization and build options for UVWASI (#4260)
This commit is contained in:
@ -4128,10 +4128,16 @@ create_module(char *name, char *error_buf, uint32 error_buf_size)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if WASM_ENABLE_LIBC_WASI != 0
|
#if WASM_ENABLE_LIBC_WASI != 0
|
||||||
|
#if WASM_ENABLE_UVWASI == 0
|
||||||
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
||||||
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
||||||
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
||||||
#endif
|
#else
|
||||||
|
module->wasi_args.stdio[0] = os_get_invalid_handle();
|
||||||
|
module->wasi_args.stdio[1] = os_get_invalid_handle();
|
||||||
|
module->wasi_args.stdio[2] = os_get_invalid_handle();
|
||||||
|
#endif /* WASM_ENABLE_UVWASI == 0 */
|
||||||
|
#endif /* WASM_ENABLE_LIBC_WASI != 0 */
|
||||||
|
|
||||||
return module;
|
return module;
|
||||||
#if WASM_ENABLE_GC != 0
|
#if WASM_ENABLE_GC != 0
|
||||||
|
|||||||
@ -3886,11 +3886,15 @@ wasm_runtime_init_wasi(WASMModuleInstanceCommon *module_inst,
|
|||||||
init_options.allocator = &uvwasi_allocator;
|
init_options.allocator = &uvwasi_allocator;
|
||||||
init_options.argc = argc;
|
init_options.argc = argc;
|
||||||
init_options.argv = (const char **)argv;
|
init_options.argv = (const char **)argv;
|
||||||
init_options.in = (stdinfd != -1) ? (uvwasi_fd_t)stdinfd : init_options.in;
|
init_options.in = (stdinfd != os_get_invalid_handle())
|
||||||
init_options.out =
|
? (uvwasi_fd_t)stdinfd
|
||||||
(stdoutfd != -1) ? (uvwasi_fd_t)stdoutfd : init_options.out;
|
: init_options.in;
|
||||||
init_options.err =
|
init_options.out = (stdoutfd != os_get_invalid_handle())
|
||||||
(stderrfd != -1) ? (uvwasi_fd_t)stderrfd : init_options.err;
|
? (uvwasi_fd_t)stdoutfd
|
||||||
|
: init_options.out;
|
||||||
|
init_options.err = (stderrfd != os_get_invalid_handle())
|
||||||
|
? (uvwasi_fd_t)stderrfd
|
||||||
|
: init_options.err;
|
||||||
|
|
||||||
if (dir_count > 0) {
|
if (dir_count > 0) {
|
||||||
init_options.preopenc = dir_count;
|
init_options.preopenc = dir_count;
|
||||||
|
|||||||
@ -6404,10 +6404,16 @@ create_module(char *name, char *error_buf, uint32 error_buf_size)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if WASM_ENABLE_LIBC_WASI != 0
|
#if WASM_ENABLE_LIBC_WASI != 0
|
||||||
|
#if WASM_ENABLE_UVWASI == 0
|
||||||
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
||||||
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
||||||
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
||||||
#endif
|
#else
|
||||||
|
module->wasi_args.stdio[0] = os_get_invalid_handle();
|
||||||
|
module->wasi_args.stdio[1] = os_get_invalid_handle();
|
||||||
|
module->wasi_args.stdio[2] = os_get_invalid_handle();
|
||||||
|
#endif /* WASM_ENABLE_UVWASI == 0 */
|
||||||
|
#endif /* WASM_ENABLE_LIBC_WASI != 0 */
|
||||||
|
|
||||||
(void)ret;
|
(void)ret;
|
||||||
return module;
|
return module;
|
||||||
|
|||||||
@ -3140,10 +3140,16 @@ create_module(char *name, char *error_buf, uint32 error_buf_size)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if WASM_ENABLE_LIBC_WASI != 0
|
#if WASM_ENABLE_LIBC_WASI != 0
|
||||||
|
#if WASM_ENABLE_LIBC_UVWASI == 0
|
||||||
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
module->wasi_args.stdio[0] = os_invalid_raw_handle();
|
||||||
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
module->wasi_args.stdio[1] = os_invalid_raw_handle();
|
||||||
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
module->wasi_args.stdio[2] = os_invalid_raw_handle();
|
||||||
#endif
|
#else
|
||||||
|
module->wasi_args.stdio[0] = os_get_invalid_handle();
|
||||||
|
module->wasi_args.stdio[1] = os_get_invalid_handle();
|
||||||
|
module->wasi_args.stdio[2] = os_get_invalid_handle();
|
||||||
|
#endif /* WASM_ENABLE_UVWASI == 0 */
|
||||||
|
#endif /* WASM_ENABLE_LIBC_WASI != 0 */
|
||||||
|
|
||||||
(void)ret;
|
(void)ret;
|
||||||
return module;
|
return module;
|
||||||
|
|||||||
Reference in New Issue
Block a user