]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
edit_uint64_with_suffix() add option to remove the space before the suffix
authorAlain Spineux <alain@baculasystems.com>
Fri, 4 Feb 2022 15:10:01 +0000 (16:10 +0100)
committerEric Bollengier <eric@baculasystems.com>
Thu, 14 Sep 2023 11:56:58 +0000 (13:56 +0200)
- default is with_space=true that don't change the old behavior
- the goal is to have
  used=7.205GB free=32.37GB unused=612.3MB   <=  with_space=false
  instead of
  used=7.205 GB free=32.37 GB unused=612.3 MB  <=  with_space=true

bacula/src/lib/edit.c
bacula/src/lib/protos.h

index 6a79fcda9ebd548b39b6d7a88b7710a7d588c89b..d355c7579984877c33569c11a3bb5d3b98d7f2fb 100644 (file)
@@ -105,8 +105,10 @@ char *edit_uint64_with_commas(uint64_t val, char *buf)
  * factor.  The buf array inherits a 27 byte minimim length
  * requirement from edit_unit64_with_commas(), although the output
  * string is limited to eight characters.
+ * When with_space is true (default) a space is inserted between
+ * the value and the suffix
  */
-char *edit_uint64_with_suffix(uint64_t val, char *buf)
+char *edit_uint64_with_suffix(uint64_t val, char *buf, bool with_space)
 {
   int commas = 0;
   char *c, mbuf[50];
@@ -128,7 +130,7 @@ char *edit_uint64_with_suffix(uint64_t val, char *buf)
 
   if (commas >= suffixes)
     commas = suffixes - 1;
-  bsnprintf(buf, 27, "%s %s", mbuf, suffix[commas]);
+  bsnprintf(buf, 27, with_space?"%s %s":"%s%s", mbuf, suffix[commas]);
   return buf;
 }
 
index f6ae74462e2e9899ff635222e431cdf36981a8c2..e6bee961f4e564938d73087c03612f67090dfb18 100644 (file)
@@ -231,7 +231,7 @@ uint64_t         str_to_uint64(char *str);
 int64_t          str_to_int64(char *str);
 #define str_to_int32(str) ((int32_t)str_to_int64(str))
 char *           edit_uint64_with_commas   (uint64_t val, char *buf);
-char *           edit_uint64_with_suffix   (uint64_t val, char *buf);
+char *           edit_uint64_with_suffix   (uint64_t val, char *buf, bool with_space=true);
 char *           add_commas              (char *val, char *buf);
 char *           edit_uint64             (uint64_t val, char *buf);
 char *           edit_int64              (int64_t val, char *buf);