##// END OF EJS Templates
fuzz: fix use of undeclared function memcpy()
Yuya Nishihara -
r38234:a1c0873a default
parent child Browse files
Show More
@@ -1,5 +1,6 b''
1 #include "fuzzutil.h"
1 #include "fuzzutil.h"
2
2
3 #include <cstring>
3 #include <utility>
4 #include <utility>
4
5
5 contrib::optional<two_inputs> SplitInputs(const uint8_t *Data, size_t Size)
6 contrib::optional<two_inputs> SplitInputs(const uint8_t *Data, size_t Size)
@@ -13,11 +14,11 b' contrib::optional<two_inputs> SplitInput'
13 // Copy inputs to new allocations so if bdiff over-reads
14 // Copy inputs to new allocations so if bdiff over-reads
14 // AddressSanitizer can detect it.
15 // AddressSanitizer can detect it.
15 std::unique_ptr<char[]> left(new char[left_size]);
16 std::unique_ptr<char[]> left(new char[left_size]);
16 memcpy(left.get(), Data + 1, left_size);
17 std::memcpy(left.get(), Data + 1, left_size);
17 // right starts at the next byte after left ends
18 // right starts at the next byte after left ends
18 size_t right_size = Size - (left_size + 1);
19 size_t right_size = Size - (left_size + 1);
19 std::unique_ptr<char[]> right(new char[right_size]);
20 std::unique_ptr<char[]> right(new char[right_size]);
20 memcpy(right.get(), Data + 1 + left_size, right_size);
21 std::memcpy(right.get(), Data + 1 + left_size, right_size);
21 LOG(2) << "inputs are " << left_size << " and " << right_size
22 LOG(2) << "inputs are " << left_size << " and " << right_size
22 << " bytes" << std::endl;
23 << " bytes" << std::endl;
23 two_inputs result = {std::move(right), right_size, std::move(left),
24 two_inputs result = {std::move(right), right_size, std::move(left),
General Comments 0
You need to be logged in to leave comments. Login now