mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-22 09:19:03 +00:00
This prevents callers from accidentally discarding the result of initialize(), which was the root cause of this OSS Fuzz bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=55896&q=label%3AProj-serenity&sort=summary
22 lines
548 B
C++
22 lines
548 B
C++
/*
|
|
* Copyright (c) 2020, the SerenityOS developers.
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#include <LibGfx/ImageFormats/PPMLoader.h>
|
|
#include <stddef.h>
|
|
#include <stdint.h>
|
|
|
|
extern "C" int LLVMFuzzerTestOneInput(uint8_t const* data, size_t size)
|
|
{
|
|
auto decoder_or_error = Gfx::PPMImageDecoderPlugin::create({ data, size });
|
|
if (decoder_or_error.is_error())
|
|
return 0;
|
|
auto decoder = decoder_or_error.release_value();
|
|
if (!decoder->initialize().is_error()) {
|
|
(void)decoder->frame(0);
|
|
}
|
|
return 0;
|
|
}
|