From: Dmitry V. Levin Date: Sat, 2 Apr 2016 01:05:25 +0000 (+0000) Subject: tests/hexdump_strdup.c: add support for longer strings X-Git-Tag: v4.12~459 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=69f1bf37fd73ff75dad4324662d1c5b7370a04c0;p=strace tests/hexdump_strdup.c: add support for longer strings * tests/hexdump_strdup.c (hexdump_strdup): Output extra space character before hexdumping of the 9th symbol. --- diff --git a/tests/hexdump_strdup.c b/tests/hexdump_strdup.c index e1910fa1..d7e083a4 100644 --- a/tests/hexdump_strdup.c +++ b/tests/hexdump_strdup.c @@ -37,7 +37,7 @@ const char * hexdump_strdup(const char *src) { size_t src_len = strlen(src); - size_t dst_size = 3 * src_len + 1; + size_t dst_size = 3 * src_len + 2; assert(dst_size > src_len); char *dst = malloc(dst_size); @@ -46,9 +46,12 @@ hexdump_strdup(const char *src) char *p = dst; const unsigned char *usrc = (const unsigned char *) src; - for (; *usrc; ++usrc) { - unsigned int c = *usrc; + unsigned int i; + for (i = 0; usrc[i]; ++i) { + unsigned int c = usrc[i]; *(p++) = ' '; + if (i == 8) + *(p++) = ' '; *(p++) = "0123456789abcdef"[c >> 4]; *(p++) = "0123456789abcdef"[c & 0xf]; }