skia2/fuzz/FuzzRegionOp.cpp
Kevin Lubick 7845b9700e [fuzz] Expose Region Op fuzzing to oss-fuzz.
This simplifies the fuzzer (since the important logic
is in FuzzCommon.cpp).

As requested by https://chromium-review.googlesource.com/c/chromium/src/+/2597075

Change-Id: Ia73f88ec584a2147f110755f98542e610100cfff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/389736
Commit-Queue: Weston Tracey <westont@google.com>
Auto-Submit: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Weston Tracey <westont@google.com>
2021-03-29 16:05:05 +00:00

20 lines
623 B
C++

/*
* Copyright 2018 Google Inc.
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#include "fuzz/Fuzz.h"
#include "fuzz/FuzzCommon.h"
DEF_FUZZ(RegionOp, fuzz) { // `fuzz -t api -n RegionOp`
SkRegion region;
// FuzzNiceRegion generates a random region by joining a random amount of regions
// together. This fuzzer simply targets that directly. 300 was picked arbitrarily as
// a number over 2^8.
FuzzNiceRegion(fuzz, &region, 300);
// Do a computation to make sure region is not optimized out.
region.computeRegionComplexity();
}