sizeof(env_opts.lockname) is the size of the pointer, not of
the string; this patch changes it to strlen(...)

---
 tools/env/fw_env_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/env/fw_env_main.c b/tools/env/fw_env_main.c
index b8bff264eb..499953dd69 100644
--- a/tools/env/fw_env_main.c
+++ b/tools/env/fw_env_main.c
@@ -245,7 +245,7 @@ int main(int argc, char *argv[])
        argv += optind;
 
        if (env_opts.lockname) {
-               lockname = malloc(sizeof(env_opts.lockname) +
+               lockname = malloc(strlen(env_opts.lockname) +
                                sizeof(CMD_PRINTENV) + 10);
                if (!lockname) {
                        fprintf(stderr, "Unable allocate memory");
-- 
2.11.0


_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to