X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=sprinter-json.c;h=c6ec857720d9e6acd0c0c4b9410afaa391249606;hp=c9b683530b08cb97d0d4689efe7d0a3fff1b5e84;hb=c5356b9ed56e42d36ca18206155b62c94cfbd79d;hpb=14883b07003b9ed4223cd8f2c03b301fddae07bd diff --git a/sprinter-json.c b/sprinter-json.c index c9b68353..c6ec8577 100644 --- a/sprinter-json.c +++ b/sprinter-json.c @@ -13,14 +13,14 @@ struct sprinter_json { /* A flag to signify that a separator should be inserted in the * output as soon as possible. */ - notmuch_bool_t insert_separator; + bool insert_separator; }; struct json_state { struct json_state *parent; /* True if nothing has been printed in this aggregate yet. * Suppresses the comma before a value. */ - notmuch_bool_t first; + bool first; /* The character that closes the current aggregate. */ char close; }; @@ -37,12 +37,12 @@ json_begin_value (struct sprinter *sp) fputc (',', spj->stream); if (spj->insert_separator) { fputc ('\n', spj->stream); - spj->insert_separator = FALSE; + spj->insert_separator = false; } else { fputc (' ', spj->stream); } } else { - spj->state->first = FALSE; + spj->state->first = false; } } return spj; @@ -58,7 +58,7 @@ json_begin_aggregate (struct sprinter *sp, char open, char close) fputc (open, spj->stream); state->parent = spj->state; - state->first = TRUE; + state->first = true; state->close = close; spj->state = state; } @@ -118,6 +118,8 @@ json_string_len (struct sprinter *sp, const char *val, size_t len) static void json_string (struct sprinter *sp, const char *val) { + if (val == NULL) + val = ""; json_string_len (sp, val, strlen (val)); } @@ -130,7 +132,7 @@ json_integer (struct sprinter *sp, int val) } static void -json_boolean (struct sprinter *sp, notmuch_bool_t val) +json_boolean (struct sprinter *sp, bool val) { struct sprinter_json *spj = json_begin_value (sp); @@ -152,7 +154,7 @@ json_map_key (struct sprinter *sp, const char *key) json_string (sp, key); fputs (": ", spj->stream); - spj->state->first = TRUE; + spj->state->first = true; } static void @@ -165,7 +167,7 @@ json_separator (struct sprinter *sp) { struct sprinter_json *spj = (struct sprinter_json *) sp; - spj->insert_separator = TRUE; + spj->insert_separator = true; } struct sprinter * @@ -184,7 +186,7 @@ sprinter_json_create (const void *ctx, FILE *stream) .map_key = json_map_key, .separator = json_separator, .set_prefix = json_set_prefix, - .is_text_printer = FALSE, + .is_text_printer = false, } }; struct sprinter_json *res;