Skip to content

Commit 96c6cb8

Browse files
authored
fix asprintf unused result warn (valkey-io#2987)
Use the `lm_asprintf `method to solve the warm problem: ``` debug_lua.c: In function ‘ldbEval’: debug_lua.c:470:13: warning: ignoring return value of ‘asprintf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 470 | asprintf(&err_msg, "Error compiling code: %s", lua_tostring(lua, -1)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ``` --------- Signed-off-by: skyfirelee <739609084@qq.com>
1 parent 82a312d commit 96c6cb8

File tree

1 file changed

+14
-18
lines changed

1 file changed

+14
-18
lines changed

src/modules/lua/debug_lua.c

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@
1313
#include <lauxlib.h>
1414
#include <lualib.h>
1515

16+
extern char *lm_asprintf(char const *fmt, ...);
17+
1618
/* ---------------------------------------------------------------------------
1719
* LDB: Lua debugging facilities
1820
* ------------------------------------------------------------------------- */
@@ -375,10 +377,9 @@ static void ldbPrintAll(lua_State *lua) {
375377
while ((name = lua_getlocal(lua, &ar, i)) != NULL) {
376378
i++;
377379
if (!strstr(name, "(*temporary)")) {
378-
char *prefix;
379-
asprintf(&prefix, "<value> %s = ", name);
380+
char *prefix = lm_asprintf("<value> %s = ", name);
380381
ldbLogStackValue(lua, prefix);
381-
free(prefix);
382+
ValkeyModule_Free(prefix);
382383
vars++;
383384
}
384385
lua_pop(lua, 1);
@@ -397,10 +398,9 @@ static void ldbBreak(ValkeyModuleString **argv, int argc) {
397398
ldbLogCString("No breakpoints set. Use 'b <line>' to add one.");
398399
return;
399400
} else {
400-
char *msg;
401-
asprintf(&msg, "%i breakpoints set:", ldb.bpcount);
401+
char *msg = lm_asprintf("%i breakpoints set:", ldb.bpcount);
402402
ldbLogCString(msg);
403-
free(msg);
403+
ValkeyModule_Free(msg);
404404
int j;
405405
for (j = 0; j < ldb.bpcount; j++) ldbLogSourceLine(ldb.bp[j]);
406406
}
@@ -411,10 +411,9 @@ static void ldbBreak(ValkeyModuleString **argv, int argc) {
411411
int res = ValkeyModule_StringToLongLong(argv[j], &line);
412412
if (res != VALKEYMODULE_OK) {
413413
const char *arg = ValkeyModule_StringPtrLen(argv[j], NULL);
414-
char *msg;
415-
asprintf(&msg, "Invalid argument:'%s'", arg);
414+
char *msg = lm_asprintf("Invalid argument:'%s'", arg);
416415
ldbLogCString(msg);
417-
free(msg);
416+
ValkeyModule_Free(msg);
418417
} else {
419418
if (line == 0) {
420419
ldb.bpcount = 0;
@@ -466,10 +465,9 @@ static void ldbEval(lua_State *lua, ValkeyModuleString **argv, int argc) {
466465
lua_pop(lua, 1);
467466
/* Failed? Try as a statement. */
468467
if (luaL_loadbuffer(lua, code_str, code_len, "@ldb_eval")) {
469-
char *err_msg;
470-
asprintf(&err_msg, "Error compiling code: %s", lua_tostring(lua, -1));
468+
char *err_msg = lm_asprintf("Error compiling code: %s", lua_tostring(lua, -1));
471469
ldbLogCString(err_msg);
472-
free(err_msg);
470+
ValkeyModule_Free(err_msg);
473471
ValkeyModule_FreeString(NULL, code);
474472
ValkeyModule_FreeString(NULL, expr);
475473
return;
@@ -480,10 +478,9 @@ static void ldbEval(lua_State *lua, ValkeyModuleString **argv, int argc) {
480478
ValkeyModule_FreeString(NULL, code);
481479
ValkeyModule_FreeString(NULL, expr);
482480
if (lua_pcall(lua, 0, 1, 0)) {
483-
char *err_msg;
484-
asprintf(&err_msg, "<error> %s", lua_tostring(lua, -1));
481+
char *err_msg = lm_asprintf("<error> %s", lua_tostring(lua, -1));
485482
ldbLogCString(err_msg);
486-
free(err_msg);
483+
ValkeyModule_Free(err_msg);
487484
lua_pop(lua, 1);
488485
return;
489486
}
@@ -532,10 +529,9 @@ static void ldbTrace(lua_State *lua) {
532529
while (lua_getstack(lua, level, &ar)) {
533530
lua_getinfo(lua, "Snl", &ar);
534531
if (strstr(ar.short_src, "user_script") != NULL) {
535-
char *msg;
536-
asprintf(&msg, "%s %s:", (level == 0) ? "In" : "From", ar.name ? ar.name : "top level");
532+
char *msg = lm_asprintf("%s %s:", (level == 0) ? "In" : "From", ar.name ? ar.name : "top level");
537533
ldbLogCString(msg);
538-
free(msg);
534+
ValkeyModule_Free(msg);
539535
ldbLogSourceLine(ar.currentline);
540536
}
541537
level++;

0 commit comments

Comments
 (0)