contrib/fuzz/fuzzutil.cc
changeset 38207 36d55f90e2a3
parent 38206 fa0ddd5e8fff
child 38244 a1c0873a9990
equal deleted inserted replaced
38206:fa0ddd5e8fff 38207:36d55f90e2a3
     1 #include "fuzzutil.h"
     1 #include "fuzzutil.h"
     2 
     2 
     3 #include <utility>
     3 #include <utility>
     4 
     4 
     5 std::optional<two_inputs> SplitInputs(const uint8_t *Data, size_t Size)
     5 contrib::optional<two_inputs> SplitInputs(const uint8_t *Data, size_t Size)
     6 {
     6 {
     7 	if (!Size) {
     7 	if (!Size) {
     8 		return std::nullopt;
     8 		return contrib::nullopt;
     9 	}
     9 	}
    10 	// figure out a random point in [0, Size] to split our input.
    10 	// figure out a random point in [0, Size] to split our input.
    11 	size_t left_size = (Data[0] / 255.0) * (Size - 1);
    11 	size_t left_size = (Data[0] / 255.0) * (Size - 1);
    12 
    12 
    13 	// Copy inputs to new allocations so if bdiff over-reads
    13 	// Copy inputs to new allocations so if bdiff over-reads