summaryrefslogtreecommitdiff
path: root/Meta/Lagom/Fuzzers/FuzzPPMLoader.cpp
blob: 5b599f6761d25edfbef9719b1682e9dc9a659726 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/*
 * 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();
    decoder->initialize();
    (void)decoder->frame(0);
    return 0;
}