From bf42a64c6a24943b1ac0f633a5f8907bae299d6d Mon Sep 17 00:00:00 2001 From: Tim Walsh Date: Mon, 24 May 2021 18:33:26 +1000 Subject: [PATCH] [fuzz]: fix oss fuzz 30088, envoy:stat_merger_fuzz_test: ASSERT: name = Calculation of initial byte count Signed-off-by: Tim Walsh --- ...zz-testcase-minimized-stat_merger_fuzz_test-5675276891717632 | 1 + test/common/stats/stat_merger_fuzz_test.cc | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 test/common/stats/stat_merger_corpus/clusterfuzz-testcase-minimized-stat_merger_fuzz_test-5675276891717632 diff --git a/test/common/stats/stat_merger_corpus/clusterfuzz-testcase-minimized-stat_merger_fuzz_test-5675276891717632 b/test/common/stats/stat_merger_corpus/clusterfuzz-testcase-minimized-stat_merger_fuzz_test-5675276891717632 new file mode 100644 index 0000000000000..d565d75ac8ee2 --- /dev/null +++ b/test/common/stats/stat_merger_corpus/clusterfuzz-testcase-minimized-stat_merger_fuzz_test-5675276891717632 @@ -0,0 +1 @@ +ÿö .. \ No newline at end of file diff --git a/test/common/stats/stat_merger_fuzz_test.cc b/test/common/stats/stat_merger_fuzz_test.cc index f3e84f14f632a..bd3e6b2dbc071 100644 --- a/test/common/stats/stat_merger_fuzz_test.cc +++ b/test/common/stats/stat_merger_fuzz_test.cc @@ -39,7 +39,7 @@ void testDynamicEncoding(absl::string_view data, SymbolTable& symbol_table) { // TODO(#10008): We should remove the "1 +" below, so we can get empty // segments, which trigger some inconsistent handling as described in that // bug. - uint32_t num_bytes = (1 + data[index]) & 0x7; + uint32_t num_bytes = 1 + (data[index] & 0x7); // Carve out the segment and use the 4th bit from the control-byte to // determine whether to treat this segment symbolic or not.