Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Unified Diff: third_party/leveldatabase/env_chromium_stdio.cc

Issue 168833003: Remove uses of PlatformFile from leveldb (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/leveldatabase/env_chromium_stdio.h ('k') | third_party/leveldatabase/env_chromium_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/leveldatabase/env_chromium_stdio.cc
diff --git a/third_party/leveldatabase/env_chromium_stdio.cc b/third_party/leveldatabase/env_chromium_stdio.cc
index 9b1a57fb472f72e892cb121db1d6a8616d227b3d..8abc266237b0fae5a82e6cbb4b5cb8ce4ca31d0b 100644
--- a/third_party/leveldatabase/env_chromium_stdio.cc
+++ b/third_party/leveldatabase/env_chromium_stdio.cc
@@ -106,20 +106,20 @@ class ChromiumSequentialFile : public SequentialFile {
class ChromiumRandomAccessFile : public RandomAccessFile {
private:
std::string filename_;
- ::base::PlatformFile file_;
+ mutable ::base::File file_;
const UMALogger* uma_logger_;
public:
ChromiumRandomAccessFile(const std::string& fname,
- ::base::PlatformFile file,
+ ::base::File file,
const UMALogger* uma_logger)
- : filename_(fname), file_(file), uma_logger_(uma_logger) {}
- virtual ~ChromiumRandomAccessFile() { ::base::ClosePlatformFile(file_); }
+ : filename_(fname), file_(file.Pass()), uma_logger_(uma_logger) {}
+ virtual ~ChromiumRandomAccessFile() {}
virtual Status Read(uint64_t offset, size_t n, Slice* result, char* scratch)
const {
Status s;
- int r = ::base::ReadPlatformFile(file_, offset, scratch, n);
+ int r = file_.Read(offset, scratch, n);
*result = Slice(scratch, (r < 0) ? 0 : r);
if (r < 0) {
// An error: return a non-ok status
@@ -273,24 +273,22 @@ void ChromiumEnvStdio::RecordOpenFilesLimit(const std::string& type) {
Status ChromiumEnvStdio::NewRandomAccessFile(const std::string& fname,
RandomAccessFile** result) {
- int flags = ::base::PLATFORM_FILE_READ | ::base::PLATFORM_FILE_OPEN;
- bool created;
- ::base::PlatformFileError error_code;
- ::base::PlatformFile file = ::base::CreatePlatformFile(
- ChromiumEnv::CreateFilePath(fname), flags, &created, &error_code);
- if (error_code == ::base::PLATFORM_FILE_OK) {
- *result = new ChromiumRandomAccessFile(fname, file, this);
+ int flags = ::base::File::FLAG_READ | ::base::File::FLAG_OPEN;
+ ::base::File file(ChromiumEnv::CreateFilePath(fname), flags);
+ if (file.IsValid()) {
+ *result = new ChromiumRandomAccessFile(fname, file.Pass(), this);
RecordOpenFilesLimit("Success");
return Status::OK();
}
- if (error_code == ::base::PLATFORM_FILE_ERROR_TOO_MANY_OPENED)
+ ::base::File::Error error_code = file.error_details();
+ if (error_code == ::base::File::FILE_ERROR_TOO_MANY_OPENED)
RecordOpenFilesLimit("TooManyOpened");
else
RecordOpenFilesLimit("OtherError");
*result = NULL;
RecordOSError(kNewRandomAccessFile, error_code);
return MakeIOError(fname,
- PlatformFileErrorString(error_code),
+ FileErrorString(error_code),
kNewRandomAccessFile,
error_code);
}
@@ -311,7 +309,7 @@ Status ChromiumEnvStdio::NewWritableFile(const std::string& fname,
}
#if defined(OS_WIN)
-base::PlatformFileError ChromiumEnvStdio::GetDirectoryEntries(
+base::File::Error ChromiumEnvStdio::GetDirectoryEntries(
const base::FilePath& dir_param,
std::vector<base::FilePath>* result) const {
result->clear();
@@ -321,8 +319,8 @@ base::PlatformFileError ChromiumEnvStdio::GetDirectoryEntries(
if (find_handle == INVALID_HANDLE_VALUE) {
DWORD last_error = GetLastError();
if (last_error == ERROR_FILE_NOT_FOUND)
- return base::PLATFORM_FILE_OK;
- return base::LastErrorToPlatformFileError(last_error);
+ return base::File::FILE_OK;
+ return base::File::OSErrorToFileError(last_error);
}
do {
base::FilePath filepath(find_data.cFileName);
@@ -333,21 +331,21 @@ base::PlatformFileError ChromiumEnvStdio::GetDirectoryEntries(
result->push_back(filepath.BaseName());
} while (FindNextFile(find_handle, &find_data));
DWORD last_error = GetLastError();
- base::PlatformFileError return_value = base::PLATFORM_FILE_OK;
+ base::File::Error return_value = base::File::FILE_OK;
if (last_error != ERROR_NO_MORE_FILES)
- return_value = base::LastErrorToPlatformFileError(last_error);
+ return_value = base::File::OSErrorToFileError(last_error);
FindClose(find_handle);
return return_value;
}
#else
-base::PlatformFileError ChromiumEnvStdio::GetDirectoryEntries(
+base::File::Error ChromiumEnvStdio::GetDirectoryEntries(
const base::FilePath& dir_filepath,
std::vector<base::FilePath>* result) const {
const std::string dir_string = FilePathToString(dir_filepath);
result->clear();
DIR* dir = opendir(dir_string.c_str());
if (!dir)
- return base::ErrnoToPlatformFileError(errno);
+ return base::File::OSErrorToFileError(errno);
struct dirent dent_buf;
struct dirent* dent;
int readdir_result;
@@ -359,8 +357,8 @@ base::PlatformFileError ChromiumEnvStdio::GetDirectoryEntries(
int saved_errno = errno;
closedir(dir);
if (readdir_result != 0)
- return base::ErrnoToPlatformFileError(saved_errno);
- return base::PLATFORM_FILE_OK;
+ return base::File::OSErrorToFileError(saved_errno);
+ return base::File::FILE_OK;
}
#endif
« no previous file with comments | « third_party/leveldatabase/env_chromium_stdio.h ('k') | third_party/leveldatabase/env_chromium_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698