diff --git a/test/core/end2end/fuzzers/api_fuzzer.c b/test/core/end2end/fuzzers/api_fuzzer.c
index 8e1d4195f16bc80e9f5abe470dab73a6250c5c58..7b107d2bc3dc31a20bcc9f2202bc83499f15aa45 100644
--- a/test/core/end2end/fuzzers/api_fuzzer.c
+++ b/test/core/end2end/fuzzers/api_fuzzer.c
@@ -126,7 +126,7 @@ static void read_metadata(input_stream *inp, size_t *count, grpc_metadata **meta
   memset(*metadata, 0, *count * sizeof(**metadata));
   for (size_t i = 0; i < *count; i++) {
     (*metadata)[i].key = read_string(inp);
-    read_buffer(inp, (char**)&(*metadata[i]).value, &(*metadata[i]).value_length);
+    read_buffer(inp, (char**)&(*metadata)[i].value, &(*metadata)[i].value_length);
     (*metadata)[i].flags = read_uint32(inp);
   }
 }