summaryrefslogtreecommitdiff
path: root/tests/conformance_upb.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/conformance_upb.c')
-rw-r--r--tests/conformance_upb.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/tests/conformance_upb.c b/tests/conformance_upb.c
index e0a7d8c..cefac4c 100644
--- a/tests/conformance_upb.c
+++ b/tests/conformance_upb.c
@@ -130,7 +130,7 @@ void DoTest(
}
bool DoTestIo() {
- upb_arena arena;
+ upb_arena *arena;
upb_alloc *alloc;
upb_status status;
char *serialized_input;
@@ -145,8 +145,8 @@ bool DoTestIo() {
return false;
}
- upb_arena_init(&arena);
- alloc = upb_arena_alloc(&arena);
+ arena = upb_arena_new();
+ alloc = upb_arena_alloc(arena);
serialized_input = upb_malloc(alloc, input_size);
if (!CheckedRead(STDIN_FILENO, serialized_input, input_size)) {
@@ -155,24 +155,26 @@ bool DoTestIo() {
}
request = conformance_ConformanceRequest_parsenew(
- upb_stringview_make(serialized_input, input_size), &arena);
- response = conformance_ConformanceResponse_new(&arena);
+ upb_stringview_make(serialized_input, input_size), arena);
+ response = conformance_ConformanceResponse_new(arena);
if (request) {
- DoTest(request, response, &arena);
+ DoTest(request, response, arena);
} else {
fprintf(stderr, "conformance_upb: parse of ConformanceRequest failed: %s\n",
upb_status_errmsg(&status));
}
serialized_output = conformance_ConformanceResponse_serialize(
- response, &arena, &output_size);
+ response, arena, &output_size);
CheckedWrite(STDOUT_FILENO, &output_size, sizeof(uint32_t));
CheckedWrite(STDOUT_FILENO, serialized_output, output_size);
test_count++;
+ upb_arena_free(arena);
+
return true;
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback