Remove leak warning with ASAN in the CLI

Former-commit-id: 05cd92f7661ba1a96cdcac278720b7da0b6ba60e
This commit is contained in:
John Sully 2020-10-21 21:16:08 +00:00
parent b0d9d3bc09
commit dcd6d809aa

View File

@ -1878,14 +1878,15 @@ static void repl(void) {
exit(0); exit(0);
} }
static int noninteractive(int argc, char **argv) { static int noninteractive(int argc, char ***argv) {
int retval = 0; int retval = 0;
if (config.stdinarg) { if (config.stdinarg) {
argv = zrealloc(argv, (argc+1)*sizeof(char*), MALLOC_LOCAL); *argv = zrealloc(*argv, (argc+1)*sizeof(char*), MALLOC_LOCAL);
argv[argc] = readArgFromStdin(); (*argv)[argc] = readArgFromStdin();
retval = issueCommand(argc+1, argv); retval = issueCommand(argc+1, *argv);
sdsfree((*argv)[argc]);
} else { } else {
retval = issueCommand(argc, argv); retval = issueCommand(argc, *argv);
} }
return retval; return retval;
} }
@ -7134,6 +7135,11 @@ int main(int argc, char **argv) {
if (config.eval) { if (config.eval) {
return evalMode(argc,argv); return evalMode(argc,argv);
} else { } else {
return noninteractive(argc,convertToSds(argc,argv)); sds *sdsArgs = convertToSds(argc,argv);
int rval = noninteractive(argc,&sdsArgs);
for (int i = 0; i < argc; ++i)
sdsfree(sdsArgs[i]);
zfree(sdsArgs);
return rval;
} }
} }