diff options
| author | “pengxuanzheng” <[email protected]> | 2022-07-08 05:54:40 +0000 |
|---|---|---|
| committer | “pengxuanzheng” <[email protected]> | 2022-07-12 07:28:14 +0000 |
| commit | d232643ada60cb3c2ec495c0009460470c14ed8c (patch) | |
| tree | b6ba6b6693fd9f8bb1e962e412aaaa543569a945 /gtest | |
| parent | b19d688c161dacfd4a48a12970a5185c4c1b6437 (diff) | |
🐞 fix(TSG-11123): 修复c_pull_param_from_lua 段错误
Diffstat (limited to 'gtest')
| -rw-r--r-- | gtest/gtest_tsg_lua_register_function.cpp | 8 | ||||
| -rw-r--r-- | gtest/script/call_cfunction.lua | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/gtest/gtest_tsg_lua_register_function.cpp b/gtest/gtest_tsg_lua_register_function.cpp index 9612dd1..e3388de 100644 --- a/gtest/gtest_tsg_lua_register_function.cpp +++ b/gtest/gtest_tsg_lua_register_function.cpp @@ -18,17 +18,17 @@ int set_world(tsg_lua_handle L) lua_arg_t *argv = NULL; c_pull_param_from_lua(L, &argc, &argv); - if (argc != 1 || argv == NULL || argv[0].type != STRING) + if (argc != 2 || argv == NULL || argv[0].type != STRING || argv[1].type != STRING) { return 0; } - char *buff = (char *)calloc(1, argv[0].len + strlen(" world.") + 1); - sprintf(buff, "%s%s", argv[0].str, " world."); + char *buff = (char *)calloc(2, argv[0].len + argv[1].len + 3); + sprintf(buff, "%s %s.", argv[0].str, argv[1].str); c_push_string_into_lua(L, buff, strlen(buff)); free(buff); buff = NULL; - free_param_form_lua(argc, &argv); + free_param_form_lua(argc, argv); return 1; } diff --git a/gtest/script/call_cfunction.lua b/gtest/script/call_cfunction.lua index 4315297..641bcae 100644 --- a/gtest/script/call_cfunction.lua +++ b/gtest/script/call_cfunction.lua @@ -2,5 +2,5 @@ local data = TSG.data local str = TSG.get.get_hello() -local ret = TSG.set.set_world(str) +local ret = TSG.set.set_world(str, "world") return string.len(ret), ret
\ No newline at end of file |
