summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Costan <costan@google.com>2022-09-29 09:46:03 -0700
committerVictor Costan <costan@google.com>2022-09-29 09:56:09 -0700
commita5054767929fb750adff8248c6dc719f1adb135c (patch)
treefe229afa2d3b496cb30ee913af2545e19d85ea36
parent9758c9dfd744f252bf3351c1a212e05c9f7fc857 (diff)
downloadsnappy-git-fix_build.tar.gz
Test: fix build error.fix_build
-rw-r--r--snappy.cc2
-rw-r--r--snappy_benchmark.cc9
-rw-r--r--snappy_unittest.cc6
m---------third_party/benchmark0
4 files changed, 9 insertions, 8 deletions
diff --git a/snappy.cc b/snappy.cc
index 5457377..63c8432 100644
--- a/snappy.cc
+++ b/snappy.cc
@@ -2041,7 +2041,7 @@ size_t CompressFromIOVec(const struct iovec* iov, size_t iov_cnt,
std::string* compressed) {
// Compute the number of bytes to be compressed.
size_t uncompressed_length = 0;
- for (int i = 0; i < iov_cnt; ++i) {
+ for (size_t i = 0; i < iov_cnt; ++i) {
uncompressed_length += iov[i].iov_len;
}
diff --git a/snappy_benchmark.cc b/snappy_benchmark.cc
index 0590142..e452855 100644
--- a/snappy_benchmark.cc
+++ b/snappy_benchmark.cc
@@ -158,21 +158,22 @@ void BM_UIOVecSource(benchmark::State& state) {
std::string contents =
ReadTestDataFile(kTestDataFiles[file_index].filename,
kTestDataFiles[file_index].size_limit);
+ std::vector<char> contents_copy(contents.begin(), contents.end());
// Create `iovec`s of the `contents`.
const int kNumEntries = 10;
struct iovec iov[kNumEntries];
size_t used_so_far = 0;
for (int i = 0; i < kNumEntries; ++i) {
- iov[i].iov_base = contents.data() + used_so_far;
- if (used_so_far == contents.size()) {
+ iov[i].iov_base = contents_copy.data() + used_so_far;
+ if (used_so_far == contents_copy.size()) {
iov[i].iov_len = 0;
continue;
}
if (i == kNumEntries - 1) {
- iov[i].iov_len = contents.size() - used_so_far;
+ iov[i].iov_len = contents_copy.size() - used_so_far;
} else {
- iov[i].iov_len = contents.size() / kNumEntries;
+ iov[i].iov_len = contents_copy.size() / kNumEntries;
}
used_so_far += iov[i].iov_len;
}
diff --git a/snappy_unittest.cc b/snappy_unittest.cc
index aeb8044..005fa42 100644
--- a/snappy_unittest.cc
+++ b/snappy_unittest.cc
@@ -169,7 +169,7 @@ struct iovec* GetIOVec(const std::string& input, char*& buf, size_t& num) {
int VerifyIOVecSource(const std::string& input) {
std::string compressed;
- std::string copy = input;
+ std::vector<char> copy(input.begin(), input.end());
char* buf = copy.data();
size_t num = 0;
struct iovec* iov = GetIOVec(input, buf, num);
@@ -567,8 +567,8 @@ TEST(Snappy, FourByteOffset) {
TEST(Snappy, IOVecSourceEdgeCases) {
// Validate that empty leading, trailing, and in-between iovecs are handled:
// [] [] ['a'] [] ['b'] [].
- std::string data = "ab";
- char* buf = data.data();
+ char data[3] = "ab";
+ char* buf = data;
size_t used_so_far = 0;
static const int kLengths[] = {0, 0, 1, 0, 1, 0};
struct iovec iov[ARRAYSIZE(kLengths)];
diff --git a/third_party/benchmark b/third_party/benchmark
-Subproject bf585a2789e30585b4e3ce6baf11ef2750b5467
+Subproject 49aa374da96199d64fd3de9673b6f405bbc3de3