Convert fuzzer to C99. (#686)

diff --git a/c/fuzz/decode_fuzzer.cc b/c/fuzz/decode_fuzzer.c
similarity index 87%
rename from c/fuzz/decode_fuzzer.cc
rename to c/fuzz/decode_fuzzer.c
index 60c6f8e..46144e0 100644
--- a/c/fuzz/decode_fuzzer.cc
+++ b/c/fuzz/decode_fuzzer.c
@@ -4,18 +4,23 @@
 
 #include <stddef.h>
 #include <stdint.h>
+#include <stdlib.h>
 
 #include <brotli/decode.h>
 
 // Entry point for LibFuzzer.
-extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
+int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
   size_t addend = 0;
   if (size > 0)
     addend = data[size - 1] & 7;
   const uint8_t* next_in = data;
 
   const int kBufferSize = 1024;
-  uint8_t* buffer = new uint8_t[kBufferSize];
+  uint8_t* buffer = (uint8_t*) malloc(kBufferSize);
+  if (!buffer) {
+    // OOM is out-of-scope here.
+    return 0;
+  }
   /* The biggest "magic number" in brotli is 16MiB - 16, so no need to check
      the cases with much longer output. */
   const size_t total_out_limit = (addend == 0) ? (1 << 26) : (1 << 24);
@@ -48,6 +53,6 @@
   }
 
   BrotliDecoderDestroyInstance(state);
-  delete[] buffer;
+  free(buffer);
   return 0;
 }
diff --git a/c/fuzz/run_decode_fuzzer.cc b/c/fuzz/run_decode_fuzzer.c
similarity index 92%
rename from c/fuzz/run_decode_fuzzer.cc
rename to c/fuzz/run_decode_fuzzer.c
index 8fd4189..c84f98a 100644
--- a/c/fuzz/run_decode_fuzzer.cc
+++ b/c/fuzz/run_decode_fuzzer.c
@@ -11,7 +11,7 @@
 #include <stdlib.h>
 #include <stdint.h>
 
-extern "C" void LLVMFuzzerTestOneInput(const uint8_t* data, size_t size);
+void LLVMFuzzerTestOneInput(const uint8_t* data, size_t size);
 
 int main(int argc, char* *argv) {
   if (argc != 2) {
diff --git a/c/fuzz/test_fuzzer.sh b/c/fuzz/test_fuzzer.sh
index 5c754e1..9985194 100755
--- a/c/fuzz/test_fuzzer.sh
+++ b/c/fuzz/test_fuzzer.sh
@@ -2,7 +2,6 @@
 set -e
 
 export CC=${CC:-cc}
-export CXX=${CXX:-c++}
 
 BROTLI="$( cd "$( dirname "${BASH_SOURCE[0]}" )/../.." && pwd )"
 SRC=$BROTLI/c
@@ -13,12 +12,12 @@
 mkdir bin
 cd bin
 
-cmake $BROTLI -DCMAKE_C_COMPILER="$CC" -DCMAKE_CXX_COMPILER="$CXX" \
+cmake $BROTLI -DCMAKE_C_COMPILER="$CC" \
     -DBUILD_TESTING=OFF -DENABLE_SANITIZER=address
 make -j$(nproc) brotlidec-static
 
-${CXX} -o run_decode_fuzzer -std=c++11 -fsanitize=address -I$SRC/include \
-    $SRC/fuzz/decode_fuzzer.cc $SRC/fuzz/run_decode_fuzzer.cc \
+${CC} -o run_decode_fuzzer -std=c99 -fsanitize=address -I$SRC/include \
+    $SRC/fuzz/decode_fuzzer.c $SRC/fuzz/run_decode_fuzzer.c \
     ./libbrotlidec-static.a ./libbrotlicommon-static.a
 
 mkdir decode_corpora