File 2323-erl_call-Fix-code_checker-memory-leak-warnings-for-m.patch of Package erlang
From 1d60851354180bbb5bcf2a5d4fefa9483fc46d8b Mon Sep 17 00:00:00 2001
From: Kjell Winblad <kjellwinblad@gmail.com>
Date: Tue, 16 Mar 2021 15:11:14 +0100
Subject: [PATCH 3/6] erl_call: Fix code_checker memory leak warnings for mod,
fun and args
---
lib/erl_interface/src/prog/erl_call.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/lib/erl_interface/src/prog/erl_call.c b/lib/erl_interface/src/prog/erl_call.c
index 68392594f3..0b7848d2d9 100644
--- a/lib/erl_interface/src/prog/erl_call.c
+++ b/lib/erl_interface/src/prog/erl_call.c
@@ -674,9 +674,12 @@ int main(int argc, char *argv[])
fprintf(stderr, "erl_call: Failed to parse arguments,\n"
"see the documentation for allowed term types.\n"
"Arguments: %s\n", args);
+ free(mod);
+ free(fun);
+ free(args);
exit_free_flags_fields(-1, &flags);
}
-
+ free(args);
ei_x_new_with_version(&reply);
if (flags.fetch_stdout) {
@@ -688,6 +691,8 @@ int main(int argc, char *argv[])
/* FIXME no error message and why -1 ? */
ei_x_free(&e);
ei_x_free(&reply);
+ free(mod);
+ free(fun);
exit_free_flags_fields(-1, &flags);
} else {
if (flags.print_result_term) {
@@ -697,6 +702,8 @@ int main(int argc, char *argv[])
ei_x_free(&e);
ei_x_free(&reply);
}
+ free(mod);
+ free(fun);
}
exit_free_flags_fields(0, &flags);
return(0);
--
2.26.2