diff options
Diffstat (limited to 'testing/libfuzzer')
-rw-r--r-- | testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc | 9 | ||||
-rw-r--r-- | testing/libfuzzer/xfa_codec_fuzzer.h | 8 |
2 files changed, 5 insertions, 12 deletions
diff --git a/testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc b/testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc index 63d0e3c75d..94decbfc2c 100644 --- a/testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc +++ b/testing/libfuzzer/pdf_cfx_saxreader_fuzzer.cc @@ -16,17 +16,14 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { if (!stream) return 0; - std::unique_ptr<IFX_SeekableReadStream, - ReleaseDeleter<IFX_SeekableReadStream>> - fileRead(stream->MakeSeekableReadStream()); + CFX_RetainPtr<IFX_SeekableReadStream> fileRead = + stream->MakeSeekableReadStream(); if (!fileRead) return 0; CFX_SAXReader reader; - if (reader.StartParse(fileRead.get(), 0, -1, CFX_SaxParseMode_NotSkipSpace) < - 0) { + if (reader.StartParse(fileRead, 0, -1, CFX_SaxParseMode_NotSkipSpace) < 0) return 0; - } while (1) { int32_t ret = reader.ContinueParse(nullptr); diff --git a/testing/libfuzzer/xfa_codec_fuzzer.h b/testing/libfuzzer/xfa_codec_fuzzer.h index 4281db0ac9..8608993396 100644 --- a/testing/libfuzzer/xfa_codec_fuzzer.h +++ b/testing/libfuzzer/xfa_codec_fuzzer.h @@ -17,10 +17,8 @@ class XFACodecFuzzer { std::unique_ptr<CCodec_ModuleMgr> mgr(new CCodec_ModuleMgr()); std::unique_ptr<CCodec_ProgressiveDecoder> decoder( mgr->CreateProgressiveDecoder()); - Reader source(data, size); - - FXCODEC_STATUS status = - decoder->LoadImageInfo(&source, type, nullptr, true); + CFX_RetainPtr<Reader> source(new Reader(data, size)); + FXCODEC_STATUS status = decoder->LoadImageInfo(source, type, nullptr, true); if (status != FXCODEC_STATUS_FRAME_READY) return 0; @@ -46,8 +44,6 @@ class XFACodecFuzzer { Reader(const uint8_t* data, size_t size) : m_data(data), m_size(size) {} ~Reader() {} - void Release() override {} - bool ReadBlock(void* buffer, FX_FILESIZE offset, size_t size) override { if (offset < 0 || static_cast<size_t>(offset) >= m_size) return false; |