summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaikari <[email protected]>2026-07-10 05:11:12 +0300
committerSaikari <[email protected]>2026-07-10 05:11:12 +0300
commitfd2a0d87ab99d315c8d7ee9cb38e214d7e1c5ae6 (patch)
tree92b1846b7a74bcc8fca9e8434e27f0be9c5da4b5
parent2567b4e41ba9b0f508e34e307b5816045d15e3b4 (diff)
fix: use lua_newuserdata for dynamic memory allocation in path translation
-rw-r--r--core/src/xmake/path/translate.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/core/src/xmake/path/translate.c b/core/src/xmake/path/translate.c
index 2b8806b07..cd2f4e51d 100644
--- a/core/src/xmake/path/translate.c
+++ b/core/src/xmake/path/translate.c
@@ -69,8 +69,7 @@ tb_int_t xm_path_translate(lua_State *lua) {
return 1;
}
maxn = (tb_size_t)path_size + TB_PATH_MAXN;
- data = (tb_char_t *)tb_malloc(maxn);
- tb_check_return_val(data, 0);
+ data = (tb_char_t *)lua_newuserdata(lua, maxn);
}
tb_size_t size = tb_path_translate_to(path, (tb_size_t)path_size, data, maxn, normalize);
if (size) {
@@ -78,8 +77,5 @@ tb_int_t xm_path_translate(lua_State *lua) {
} else {
lua_pushnil(lua);
}
- if (data != buff) {
- tb_free(data);
- }
return 1;
}