summaryrefslogtreecommitdiff
path: root/upb/json/printer.c
diff options
context:
space:
mode:
Diffstat (limited to 'upb/json/printer.c')
-rw-r--r--upb/json/printer.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/upb/json/printer.c b/upb/json/printer.c
index 230aa0d..cc50417 100644
--- a/upb/json/printer.c
+++ b/upb/json/printer.c
@@ -5,8 +5,6 @@
#include "upb/json/printer.h"
-#include <stdlib.h>
-#include <stdio.h>
#include <string.h>
#include <stdint.h>
@@ -39,22 +37,22 @@ typedef struct {
void freestrpc(void *ptr) {
strpc *pc = ptr;
- free(pc->ptr);
- free(pc);
+ upb_gfree(pc->ptr);
+ upb_gfree(pc);
}
/* Convert fielddef name to JSON name and return as a string piece. */
strpc *newstrpc(upb_handlers *h, const upb_fielddef *f,
bool preserve_fieldnames) {
/* TODO(haberman): handle malloc failure. */
- strpc *ret = malloc(sizeof(*ret));
+ strpc *ret = upb_gmalloc(sizeof(*ret));
if (preserve_fieldnames) {
- ret->ptr = upb_strdup(upb_fielddef_name(f));
+ ret->ptr = upb_gstrdup(upb_fielddef_name(f));
ret->len = strlen(ret->ptr);
} else {
size_t len;
ret->len = upb_fielddef_getjsonname(f, NULL, 0);
- ret->ptr = malloc(ret->len);
+ ret->ptr = upb_gmalloc(ret->len);
len = upb_fielddef_getjsonname(f, ret->ptr, ret->len);
UPB_ASSERT_VAR(len, len == ret->len);
ret->len--; /* NULL */
@@ -566,10 +564,10 @@ static void set_enum_hd(upb_handlers *h,
const upb_fielddef *f,
bool preserve_fieldnames,
upb_handlerattr *attr) {
- EnumHandlerData *hd = malloc(sizeof(EnumHandlerData));
+ EnumHandlerData *hd = upb_gmalloc(sizeof(EnumHandlerData));
hd->enumdef = (const upb_enumdef *)upb_fielddef_subdef(f);
hd->keyname = newstrpc(h, f, preserve_fieldnames);
- upb_handlers_addcleanup(h, hd, free);
+ upb_handlers_addcleanup(h, hd, upb_gfree);
upb_handlerattr_sethandlerdata(attr, hd);
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback