| Index: courgette/courgette_tool.cc
|
| diff --git a/courgette/courgette_tool.cc b/courgette/courgette_tool.cc
|
| index d0fdb4e62bd5436f81a48bc6caa21b24359df31b..d667f91eb6b549169b0631477e345b0faa2d3d9e 100644
|
| --- a/courgette/courgette_tool.cc
|
| +++ b/courgette/courgette_tool.cc
|
| @@ -57,20 +57,14 @@ void Problem(const char* format, ...) {
|
| class BufferedFileReader {
|
| public:
|
| BufferedFileReader(const base::FilePath& file_name, const char* kind) {
|
| - int64_t file_size = 0;
|
| - if (!base::GetFileSize(file_name, &file_size))
|
| + if (!buffer_.Initialize(file_name))
|
| Problem("Can't read %s file.", kind);
|
| - buffer_.reserve(static_cast<size_t>(file_size));
|
| - if (!base::ReadFileToString(file_name, &buffer_))
|
| - Problem("Can't read %s file.", kind);
|
| - }
|
| - const uint8_t* data() {
|
| - return reinterpret_cast<const uint8_t*>(buffer_.data());
|
| }
|
| - size_t length() { return buffer_.length(); }
|
| + const uint8_t* data() const { return buffer_.data(); }
|
| + size_t length() const { return buffer_.length(); }
|
|
|
| private:
|
| - std::string buffer_;
|
| + base::MemoryMappedFile buffer_;
|
| };
|
|
|
| void WriteSinkToFile(const courgette::SinkStream *sink,
|
|
|