From a3a4361f1277ac1c62a46de82b123ce114b4bd37 Mon Sep 17 00:00:00 2001 From: linear0211 Date: Sat, 17 Jan 2026 15:34:33 +0900 Subject: [PATCH] Add bh_strtok_r function --- core/iwasm/common/wasm_runtime_common.c | 9 ++------- core/shared/utils/bh_common.c | 10 ++++++++++ core/shared/utils/bh_common.h | 3 +++ 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/core/iwasm/common/wasm_runtime_common.c b/core/iwasm/common/wasm_runtime_common.c index 9edec17982..3dbe496950 100644 --- a/core/iwasm/common/wasm_runtime_common.c +++ b/core/iwasm/common/wasm_runtime_common.c @@ -3909,13 +3909,8 @@ wasm_runtime_init_wasi(WASMModuleInstanceCommon *module_inst, goto fail; } -#ifdef BH_PLATFORM_WINDOWS - address = strtok_s(cp, "/", &nextptr); - mask = strtok_s(NULL, "/", &nextptr); -#else - address = strtok_r(cp, "/", &nextptr); - mask = strtok_r(NULL, "/", &nextptr); -#endif + address = bh_strtok_r(cp, "/", &nextptr); + mask = bh_strtok_r(NULL, "/", &nextptr); if (!mask) { snprintf(error_buf, error_buf_size, diff --git a/core/shared/utils/bh_common.c b/core/shared/utils/bh_common.c index 34b6f40e78..d86840d7d2 100644 --- a/core/shared/utils/bh_common.c +++ b/core/shared/utils/bh_common.c @@ -166,6 +166,16 @@ wa_strdup(const char *s) return s1; } +char * +bh_strtok_r(char *str, const char *delim, char **saveptr) +{ +#if !(defined(_WIN32) || defined(_WIN32_)) + return strtok_r(str, delim, saveptr); +#else + return strtok_s(str, delim, saveptr); +#endif +} + #if WASM_ENABLE_WAMR_COMPILER != 0 || WASM_ENABLE_JIT != 0 int bh_system(const char *cmd) diff --git a/core/shared/utils/bh_common.h b/core/shared/utils/bh_common.h index 093e622081..2f31bd5d80 100644 --- a/core/shared/utils/bh_common.h +++ b/core/shared/utils/bh_common.h @@ -66,6 +66,9 @@ bh_strdup(const char *s); char * wa_strdup(const char *s); +char * +bh_strtok_r(char *str, const char *delim, char **saveptr); + #if WASM_ENABLE_WAMR_COMPILER != 0 || WASM_ENABLE_JIT != 0 /* Executes a system command in bash/cmd.exe */ int