diff options
author | Brad King <brad.king@kitware.com> | 2016-02-03 18:20:00 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2016-02-03 18:42:18 (GMT) |
commit | 858386d8415d2ee932fe3c01ebfbe5e0737f94a3 (patch) | |
tree | 794bd049a0217fda35c9dd3be483cca03cd3367b /src/test.cc | |
parent | f9487ac7971a668ddf142d5adc741f789c7bbb68 (diff) | |
download | Ninja-858386d8415d2ee932fe3c01ebfbe5e0737f94a3.zip Ninja-858386d8415d2ee932fe3c01ebfbe5e0737f94a3.tar.gz Ninja-858386d8415d2ee932fe3c01ebfbe5e0737f94a3.tar.bz2 |
Expose more details in FileReader::ReadFile signature
Return a status so callers can distinguish a missing file from an empty
file. This allows our VirtualFileSystem test infrastructure to report
as missing any file for which it has no entry.
Diffstat (limited to 'src/test.cc')
-rw-r--r-- | src/test.cc | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/test.cc b/src/test.cc index 841ce04..53bfc48 100644 --- a/src/test.cc +++ b/src/test.cc @@ -164,12 +164,17 @@ bool VirtualFileSystem::MakeDir(const string& path) { return true; // success } -string VirtualFileSystem::ReadFile(const string& path, string* err) { +FileReader::Status VirtualFileSystem::ReadFile(const string& path, + string* contents, + string* err) { files_read_.push_back(path); FileMap::iterator i = files_.find(path); - if (i != files_.end()) - return i->second.contents; - return ""; + if (i != files_.end()) { + *contents = i->second.contents; + return Okay; + } + *err = strerror(ENOENT); + return NotFound; } int VirtualFileSystem::RemoveFile(const string& path) { |