diff mbox

qapi/string-putput-visitor: fix bugs

Message ID 1403105835-25535-1-git-send-email-mst@redhat.com
State New
Headers show

Commit Message

Michael S. Tsirkin June 18, 2014, 3:37 p.m. UTC
in human mode, we are creating the string:

16-31 (16-31)

instead of

16-17 (10-1f)

because we forgot to pass 'true' as the human parameter on one of the
two calls to format_string.
Also, this is a worsening of quality; previously we would produce

16 (0x10)

to make it obvious which number was hex.
Fix these issues.

Reported-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
 qapi/string-output-visitor.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Eric Blake June 18, 2014, 3:46 p.m. UTC | #1
On 06/18/2014 09:37 AM, Michael S. Tsirkin wrote:
> in human mode, we are creating the string:
> 
> 16-31 (16-31)
> 
> instead of
> 
> 16-17 (10-1f)
> 
> because we forgot to pass 'true' as the human parameter on one of the
> two calls to format_string.
> Also, this is a worsening of quality; previously we would produce
> 
> 16 (0x10)
> 
> to make it obvious which number was hex.
> Fix these issues.
> 
> Reported-by: Eric Blake <eblake@redhat.com>
> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> ---
>  qapi/string-output-visitor.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)

> 
> diff --git a/qapi/string-output-visitor.c b/qapi/string-output-visitor.c
> index 8735b00..e9aca3b 100644
> --- a/qapi/string-output-visitor.c
> +++ b/qapi/string-output-visitor.c
> @@ -98,7 +98,7 @@ static void format_string(StringOutputVisitor *sov, Range *r, bool next,
>  {
>      if (r->end - r->begin > 1) {
>          if (human) {
> -            g_string_append_printf(sov->string, "%" PRIx64 "-%" PRIx64,
> +            g_string_append_printf(sov->string, "0x%" PRIx64 "-%" PRIx64,

The pre-series code used "%#"PRIx64 instead of "0x%"PRIx64; the only
difference is that you now output 0x0 instead of 0 if that happens to be
one of the values of the range.  I personally think "0 (0x0)" is nicer
than the shorter "0 (0)", so I'm okay with it.

Reviewed-by: Eric Blake <eblake@redhat.com>
diff mbox

Patch

diff --git a/qapi/string-output-visitor.c b/qapi/string-output-visitor.c
index 8735b00..e9aca3b 100644
--- a/qapi/string-output-visitor.c
+++ b/qapi/string-output-visitor.c
@@ -98,7 +98,7 @@  static void format_string(StringOutputVisitor *sov, Range *r, bool next,
 {
     if (r->end - r->begin > 1) {
         if (human) {
-            g_string_append_printf(sov->string, "%" PRIx64 "-%" PRIx64,
+            g_string_append_printf(sov->string, "0x%" PRIx64 "-%" PRIx64,
                                    r->begin, r->end - 1);
 
         } else {
@@ -107,7 +107,7 @@  static void format_string(StringOutputVisitor *sov, Range *r, bool next,
         }
     } else {
         if (human) {
-            g_string_append_printf(sov->string, "%" PRIx64, r->begin);
+            g_string_append_printf(sov->string, "0x%" PRIx64, r->begin);
         } else {
             g_string_append_printf(sov->string, "%" PRId64, r->begin);
         }
@@ -186,7 +186,7 @@  static void print_type_int(Visitor *v, int64_t *obj, const char *name,
         g_string_append(sov->string, " (");
         while (l) {
             Range *r = l->data;
-            format_string(sov, r, l->next != NULL, false);
+            format_string(sov, r, l->next != NULL, true);
             l = l->next;
         }
         g_string_append(sov->string, ")");