]> sigrok.org Git - libsigrok.git/blobdiff - src/strutil.c
strutil: add more space in hexdumps after 8 and 16 data bytes
[libsigrok.git] / src / strutil.c
index 9376ff09ce24682e2677fa2c54165ab2ad74406d..c389a524d26598aa20a4274969cbd1bf9c76ae4b 100644 (file)
@@ -788,10 +788,17 @@ SR_PRIV GString *sr_hexdump_new(const uint8_t *data, const size_t len)
        GString *s;
        size_t i;
 
-       s = g_string_sized_new(3 * len);
+       i = 3 * len;
+       i += len / 8;
+       i += len / 16;
+       s = g_string_sized_new(i);
        for (i = 0; i < len; i++) {
                if (i)
                        g_string_append_c(s, ' ');
+               if (i && (i % 8) == 0)
+                       g_string_append_c(s, ' ');
+               if (i && (i % 16) == 0)
+                       g_string_append_c(s, ' ');
                g_string_append_printf(s, "%02x", data[i]);
        }