netstar pushed a commit to branch master.

http://git.enlightenment.org/apps/evisum.git/commit/?id=f060c437a8fc450f810a829e37a4973a4d72a1d9

commit f060c437a8fc450f810a829e37a4973a4d72a1d9
Author: Alastair Poole <nets...@gmail.com>
Date:   Fri Mar 19 08:15:36 2021 +0000

    util: static init and translation ware.
---
 src/bin/ui/ui_util.c | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)

diff --git a/src/bin/ui/ui_util.c b/src/bin/ui/ui_util.c
index 96c6948..3eb2a21 100644
--- a/src/bin/ui/ui_util.c
+++ b/src/bin/ui/ui_util.c
@@ -106,21 +106,25 @@ evisum_ui_button_add(Evas_Object *parent, Evas_Object 
**alias, const char *text,
 const char *
 evisum_size_format(unsigned long long bytes)
 {
-   const char *s, *unit = "BKMGTPEZY";
    unsigned long powi = 1;
    unsigned long long value;
    unsigned int precision = 2, powj = 1;
+   int i = 0;
+   static const char *units[8] = {
+      _("B"), _("K"), _("M"), _("G"),
+      _("T"), _("P"), _("E"), _("Z"),
+   };
 
    value = bytes;
    while (value > 1024)
      {
        if ((value / 1024) < powi) break;
        powi *= 1024;
-       ++unit;
-       if (unit[1] == '\0') break;
+       ++i;
+       if (i == 7) break;
      }
 
-   if (*unit == 'B') precision = 0;
+   if (!i) precision = 0;
 
    while (precision > 0)
      {
@@ -129,9 +133,7 @@ evisum_size_format(unsigned long long bytes)
         --precision;
      }
 
-   s = eina_slstr_printf("%1.*f %c", precision, (double) value / powi, *unit);
-
-   return s;
+   return eina_slstr_printf("%1.*f %s", precision, (double) value / powi, 
units[i]);
 }
 
 static char *

-- 


Reply via email to