| OLD | NEW |
| 1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stdint.h> | 5 #include <stdint.h> |
| 6 #include <string.h> |
| 6 | 7 |
| 7 #include "third_party/zlib/zlib.h" | 8 #include "third_party/zlib/zlib.h" |
| 8 | 9 |
| 9 // Entry point for LibFuzzer. | 10 // Entry point for LibFuzzer. |
| 10 extern "C" int LLVMFuzzerTestOneInput(const unsigned char *data, size_t size) { | 11 extern "C" int LLVMFuzzerTestOneInput(const unsigned char *data, size_t size) { |
| 11 uint8_t buffer[1024 * 1024] = { 0 }; | 12 const int NUM_ITEMS = 1024 * 1024; |
| 12 size_t buffer_length = sizeof(buffer); | 13 const int BUF_SIZE = NUM_ITEMS * sizeof(uint8_t); |
| 13 if (Z_OK != uncompress(buffer, &buffer_length, data, size)) { | 14 uint8_t *buffer = new uint8_t[NUM_ITEMS]; |
| 15 uLongf buffer_length = (uLongf)BUF_SIZE; |
| 16 memset(buffer, 0, BUF_SIZE); |
| 17 |
| 18 if (Z_OK != uncompress(buffer, &buffer_length, data, size)) { |
| 19 delete[] buffer; |
| 20 return 0; |
| 21 } |
| 22 delete[] buffer; |
| 14 return 0; | 23 return 0; |
| 15 } | |
| 16 | |
| 17 return 0; | |
| 18 } | 24 } |
| OLD | NEW |