X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;f=folly%2Fio%2FRecordIO.cpp;h=50c854ec01062bb23b0c0c1b6d216f14393f7724;hb=641ad8da9ecd87271bb3fcf05d06d9b7d85e5ff9;hp=d889e80698aac8098a710e0c5eed6f0aeed6d3cf;hpb=321542683a01c3f334047531e9b487f047129775;p=folly.git diff --git a/folly/io/RecordIO.cpp b/folly/io/RecordIO.cpp index d889e806..50c854ec 100644 --- a/folly/io/RecordIO.cpp +++ b/folly/io/RecordIO.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2016 Facebook, Inc. + * Copyright 2017 Facebook, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -17,7 +17,6 @@ #include #include -#include #include #include @@ -25,6 +24,7 @@ #include #include #include +#include namespace folly { @@ -54,7 +54,7 @@ void RecordIOWriter::write(std::unique_ptr buf) { DCHECK_EQ(buf->computeChainDataLength(), totalLength); // We're going to write. Reserve space for ourselves. - off_t pos = filePos_.fetch_add(totalLength); + off_t pos = filePos_.fetch_add(off_t(totalLength)); #if FOLLY_HAVE_PWRITEV auto iov = buf->getIov(); @@ -66,7 +66,7 @@ void RecordIOWriter::write(std::unique_ptr buf) { #endif checkUnixError(bytes, "pwrite() failed"); - DCHECK_EQ(bytes, totalLength); + DCHECK_EQ(size_t(bytes), totalLength); } RecordIOReader::RecordIOReader(File file, uint32_t fileId) @@ -84,7 +84,7 @@ RecordIOReader::Iterator::Iterator(ByteRange range, uint32_t fileId, off_t pos) range_.clear(); } else { recordAndPos_.second = pos; - range_.advance(pos); + range_.advance(size_t(pos)); advanceToValid(); } } @@ -95,12 +95,12 @@ void RecordIOReader::Iterator::advanceToValid() { recordAndPos_ = std::make_pair(ByteRange(), off_t(-1)); range_.clear(); // at end } else { - size_t skipped = record.begin() - range_.begin(); + size_t skipped = size_t(record.begin() - range_.begin()); DCHECK_GE(skipped, headerSize()); skipped -= headerSize(); range_.advance(skipped); recordAndPos_.first = record; - recordAndPos_.second += skipped; + recordAndPos_.second += off_t(skipped); } } @@ -165,7 +165,7 @@ size_t prependHeader(std::unique_ptr& buf, uint32_t fileId) { memset(header, 0, sizeof(Header)); header->magic = detail::Header::kMagic; header->fileId = fileId; - header->dataLength = lengthAndHash.first; + header->dataLength = uint32_t(lengthAndHash.first); header->dataHash = lengthAndHash.second; header->headerHash = headerHash(*header);