[PATCH 3 of 7] fuzz: fix use of undeclared function memcpy()

Yuya Nishihara yuya at tcha.org
Sun Jun 3 02:43:41 EDT 2018


# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1527999152 -32400
#      Sun Jun 03 13:12:32 2018 +0900
# Node ID 1b032ef2d1ef65e9a7ea85cd6b21da2f8ffac2c7
# Parent  6ff20cd82ede95c61dac43c18e799ec0a49b6f9c
fuzz: fix use of undeclared function memcpy()

diff --git a/contrib/fuzz/fuzzutil.cc b/contrib/fuzz/fuzzutil.cc
--- a/contrib/fuzz/fuzzutil.cc
+++ b/contrib/fuzz/fuzzutil.cc
@@ -1,5 +1,6 @@
 #include "fuzzutil.h"
 
+#include <cstring>
 #include <utility>
 
 contrib::optional<two_inputs> SplitInputs(const uint8_t *Data, size_t Size)
@@ -13,11 +14,11 @@ contrib::optional<two_inputs> SplitInput
 	// Copy inputs to new allocations so if bdiff over-reads
 	// AddressSanitizer can detect it.
 	std::unique_ptr<char[]> left(new char[left_size]);
-	memcpy(left.get(), Data + 1, left_size);
+	std::memcpy(left.get(), Data + 1, left_size);
 	// right starts at the next byte after left ends
 	size_t right_size = Size - (left_size + 1);
 	std::unique_ptr<char[]> right(new char[right_size]);
-	memcpy(right.get(), Data + 1 + left_size, right_size);
+	std::memcpy(right.get(), Data + 1 + left_size, right_size);
 	LOG(2) << "inputs are  " << left_size << " and " << right_size
 	       << " bytes" << std::endl;
 	two_inputs result = {std::move(right), right_size, std::move(left),


More information about the Mercurial-devel mailing list