summaryrefslogtreecommitdiff
path: root/testing/fuzzers/pdf_codec_icc_fuzzer.cc
blob: 2f4fa446626c33d76284b10a73333b366f3e22e0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Copyright 2016 The PDFium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include <cstdint>

#include "core/fxcodec/codec/ccodec_iccmodule.h"

extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
  CCodec_IccModule icc_module;
  std::unique_ptr<CLcmsCmm> transform =
      icc_module.CreateTransform_sRGB(data, size);

  if (transform) {
    float src[4];
    float dst[4];
    for (int i = 0; i < 4; i++)
      src[i] = 0.5f;
    icc_module.SetComponents(transform->components());
    icc_module.Translate(transform.get(), src, dst);
  }

  return 0;
}