diff options
| author | Joe Hershberger <joe.hershberger@ni.com> | 2012-10-15 15:29:24 +0000 | 
|---|---|---|
| committer | Tom Rini <trini@ti.com> | 2012-10-16 08:47:27 -0700 | 
| commit | ce2f5800177c36451da44345f7ab408df240ff82 (patch) | |
| tree | 0ef10bd798796dd3396da50c904c808366700f89 /tools/env/fw_env.c | |
| parent | bd23b22badadcdc414a900828253961fc5ec6c39 (diff) | |
| download | olio-uboot-2014.01-ce2f5800177c36451da44345f7ab408df240ff82.tar.xz olio-uboot-2014.01-ce2f5800177c36451da44345f7ab408df240ff82.zip | |
tools/env: Fix variable delete operation
Fix crash introduced by a073d63a36524453a817ab029fad5b188f46127e
when attempting to delete a variable.
Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Diffstat (limited to 'tools/env/fw_env.c')
| -rw-r--r-- | tools/env/fw_env.c | 5 | 
1 files changed, 3 insertions, 2 deletions
| diff --git a/tools/env/fw_env.c b/tools/env/fw_env.c index ab8c15d30..97328bb3a 100644 --- a/tools/env/fw_env.c +++ b/tools/env/fw_env.c @@ -494,6 +494,8 @@ int fw_setenv(int argc, char *argv[])  		char *val = argv[i];  		size_t val_len = strlen(val); +		if (value) +			value[len - 1] = ' ';  		value = realloc(value, len + val_len + 1);  		if (!value) {  			fprintf(stderr, @@ -504,9 +506,8 @@ int fw_setenv(int argc, char *argv[])  		memcpy(value + len, val, val_len);  		len += val_len; -		value[len++] = ' '; +		value[len++] = '\0';  	} -	value[len - 1] = '\0';  	fw_env_write(name, value); |