We now have pr_setenv() which is a setenv() variant that takes a
format string. Use it where appropriate.

Signed-off-by: Sascha Hauer <[email protected]>
---
 commands/clk.c      | 10 +++-------
 commands/crc.c      | 14 ++++----------
 commands/hwclock.c  |  4 +---
 commands/loadb.c    |  4 +---
 commands/loads.c    |  4 +---
 common/bootsource.c |  8 ++------
 common/menutree.c   |  9 +--------
 7 files changed, 13 insertions(+), 40 deletions(-)

diff --git a/commands/clk.c b/commands/clk.c
index dfbc7c988f..b1741b9da4 100644
--- a/commands/clk.c
+++ b/commands/clk.c
@@ -139,13 +139,9 @@ static int do_clk_get_rate(int argc, char *argv[])
 
        rate = clk_get_rate(clk);
 
-       if (variable_name) {
-               char *t;
-
-               t = basprintf("%lu", rate);
-               setenv(variable_name, t);
-               free(t);
-       } else
+       if (variable_name)
+               pr_setenv(variable_name, "%lu", rate);
+       else
                printf("%lu\n", rate);
 
        return COMMAND_SUCCESS;
diff --git a/commands/crc.c b/commands/crc.c
index 80ecf7fe29..23ffd4360b 100644
--- a/commands/crc.c
+++ b/commands/crc.c
@@ -83,17 +83,11 @@ static int do_crc(int argc, char *argv[])
        printf("CRC32 for %s 0x%08lx ... 0x%08lx ==> 0x%08lx",
                        filename, (ulong)start, (ulong)start + total - 1, crc);
 
-       if (crcvarname) {
-               char *crcstr = basprintf("0x%lx", crc);
-               setenv(crcvarname, crcstr);
-               kfree(crcstr);
-       }
+       if (crcvarname)
+               pr_setenv(crcvarname, "0x%lx", crc);
 
-       if (sizevarname) {
-               char *sizestr = basprintf("0x%lx", total);
-               setenv(sizevarname, sizestr);
-               kfree(sizestr);
-       }
+       if (sizevarname)
+               pr_setenv(sizevarname, "0x%lx", total);
 
 #ifdef CONFIG_CMD_CRC_CMP
        if (vfilename) {
diff --git a/commands/hwclock.c b/commands/hwclock.c
index abb0500e6a..c594e070ac 100644
--- a/commands/hwclock.c
+++ b/commands/hwclock.c
@@ -153,11 +153,9 @@ static int do_hwclock(int argc, char *argv[])
 
        if (env_name) {
                unsigned long time;
-               char t[12];
 
                rtc_tm_to_time(&tm, &time);
-               snprintf(t, 12, "%lu", time);
-               setenv(env_name, t);
+               pr_setenv(env_name, "%lu", time);
        } else {
                printf("%s\n", time_str(&tm));
        }
diff --git a/commands/loadb.c b/commands/loadb.c
index 17d3af84b5..7ab989f459 100644
--- a/commands/loadb.c
+++ b/commands/loadb.c
@@ -542,7 +542,6 @@ packet_error:
 static ulong load_serial_bin(void)
 {
        int size, i;
-       char buf[32];
 
        /* Try to allocate the buffer we shall write to files */
        write_buffer = malloc(MAX_WRITE_BUFFER);
@@ -576,8 +575,7 @@ static ulong load_serial_bin(void)
                write_idx = 0;
        }
        printf("## Total Size      = 0x%08x = %d Bytes\n", size, size);
-       sprintf(buf, "%X", size);
-       setenv("filesize", buf);
+       pr_setenv("filesize", "%X", size);
 
 err_quit:
        free(write_buffer);
diff --git a/commands/loads.c b/commands/loads.c
index 8260673c51..7c5df31251 100644
--- a/commands/loads.c
+++ b/commands/loads.c
@@ -65,7 +65,6 @@ static ulong load_serial(ulong offset)
        int     type;                           /* return code for record type  
*/
        ulong   addr;                           /* load address from S-Record   
*/
        ulong   size;                           /* number of bytes transferred  
*/
-       char    buf[32];
        ulong   store_addr;
        ulong   start_addr = ~0;
        ulong   end_addr   =  0;
@@ -100,8 +99,7 @@ static ulong load_serial(ulong offset)
                            "## Total Size      = 0x%08lX = %ld Bytes\n",
                            start_addr, end_addr, size, size
                            );
-                       sprintf(buf, "%lX", size);
-                       setenv("filesize", buf);
+                       pr_setenv("filesize", "%lX", size);
                        return addr;
                case SREC_START:
                        break;
diff --git a/common/bootsource.c b/common/bootsource.c
index 1f8d053a81..79dacfd1d0 100644
--- a/common/bootsource.c
+++ b/common/bootsource.c
@@ -113,16 +113,12 @@ void bootsource_set(enum bootsource src)
 
 void bootsource_set_instance(int instance)
 {
-       char buf[32];
-
        bootsource_instance = instance;
 
        if (instance < 0)
-               sprintf(buf, "unknown");
+               setenv("bootsource_instance","unknown");
        else
-               snprintf(buf, sizeof(buf), "%d", instance);
-
-       setenv("bootsource_instance", buf);
+               pr_setenv("bootsource_instance", "%d", instance);
 }
 
 enum bootsource bootsource_get(void)
diff --git a/common/menutree.c b/common/menutree.c
index 7fa835a7fe..751350d754 100644
--- a/common/menutree.c
+++ b/common/menutree.c
@@ -34,14 +34,7 @@ static void menutree_action(struct menu *m, struct 
menu_entry *me)
 
 static void setenv_bool(const char *var, bool val)
 {
-       const char *str;
-
-       if (val)
-               str = "1";
-       else
-               str = "0";
-
-       setenv(var, str);
+       pr_setenv(var, "%d", val);
 }
 
 static void menutree_box(struct menu *m, struct menu_entry *me)
-- 
2.30.2


Reply via email to