[patch] setenv(...) can delete environmentalvariables
authorJeffrey Mann <mannj@embeddedplanet.com>
Mon, 23 Apr 2007 12:00:11 +0000 (14:00 +0200)
committerStefan Roese <sr@denx.de>
Mon, 23 Apr 2007 12:00:11 +0000 (14:00 +0200)
update setenv() function so that entering a NULL value for the
variable's value will delete the environmental variable

Signed-off-by: Jeffrey Mann <mannj@embeddedplanet.com>
Acked-by: Stefan Roese <sr@denx.de>
common/cmd_nvedit.c [changed mode: 0644->0755]

old mode 100644 (file)
new mode 100755 (executable)
index 9834ba6..977ec5b
@@ -391,7 +391,10 @@ int _do_setenv (int flag, int argc, char *argv[])
 void setenv (char *varname, char *varvalue)
 {
        char *argv[4] = { "setenv", varname, varvalue, NULL };
-       _do_setenv (0, 3, argv);
+       if (varvalue == NULL)
+               _do_setenv (0, 2, argv);
+       else
+               _do_setenv (0, 3, argv);
 }
 
 int do_setenv ( cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])