summaryrefslogtreecommitdiffstats
path: root/base/test_file_util_win.cc
diff options
context:
space:
mode:
authorphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-12-12 12:00:40 +0000
committerphajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2008-12-12 12:00:40 +0000
commitd9eb3c45ead253d51ab8838055c5493ba0ac7951 (patch)
treebeab9a67d8fbd22a85301f784b48b8b55757ed60 /base/test_file_util_win.cc
parentd4f06fa99aa8f04fedbb336fe4e115831b2bc6ca (diff)
downloadchromium_src-d9eb3c45ead253d51ab8838055c5493ba0ac7951.zip
chromium_src-d9eb3c45ead253d51ab8838055c5493ba0ac7951.tar.gz
chromium_src-d9eb3c45ead253d51ab8838055c5493ba0ac7951.tar.bz2
Port flush_cache tool and perf_tests.
BUG=4160,4263 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=6815 Review URL: http://codereview.chromium.org/9639 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6886 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/test_file_util_win.cc')
-rw-r--r--base/test_file_util_win.cc11
1 files changed, 6 insertions, 5 deletions
diff --git a/base/test_file_util_win.cc b/base/test_file_util_win.cc
index 6c4dc05..ba07c67 100644
--- a/base/test_file_util_win.cc
+++ b/base/test_file_util_win.cc
@@ -8,6 +8,7 @@
#include <vector>
+#include "base/file_path.h"
#include "base/file_util.h"
#include "base/scoped_handle.h"
@@ -17,10 +18,10 @@ namespace file_util {
// our purpose fine since 4K is the page size on x86 as well as x64.
static const ptrdiff_t kPageSize = 4096;
-bool EvictFileFromSystemCache(const wchar_t* file) {
+bool EvictFileFromSystemCache(const FilePath& file) {
// Request exclusive access to the file and overwrite it with no buffering.
ScopedHandle file_handle(
- CreateFile(file, GENERIC_READ | GENERIC_WRITE, 0, NULL,
+ CreateFile(file.value().c_str(), GENERIC_READ | GENERIC_WRITE, 0, NULL,
OPEN_EXISTING, FILE_FLAG_NO_BUFFERING, NULL));
if (!file_handle)
return false;
@@ -85,8 +86,8 @@ bool EvictFileFromSystemCache(const wchar_t* file) {
// to open the file again, this time without the FILE_FLAG_NO_BUFFERING
// flag and use SetEndOfFile to mark EOF.
file_handle.Set(NULL);
- file_handle.Set(CreateFile(file, GENERIC_WRITE, 0, NULL, OPEN_EXISTING,
- 0, NULL));
+ file_handle.Set(CreateFile(file.value().c_str(), GENERIC_WRITE, 0, NULL,
+ OPEN_EXISTING, 0, NULL));
CHECK(SetFilePointer(file_handle, total_bytes, NULL, FILE_BEGIN) !=
INVALID_SET_FILE_POINTER);
CHECK(::SetEndOfFile(file_handle));
@@ -147,7 +148,7 @@ bool CopyRecursiveDirNoCache(const std::wstring& source_dir,
// files that are in the repository, and they will have read-only set.
// This will prevent us from evicting from the cache, but these don't
// matter anyway.
- EvictFileFromSystemCache(cur_dest_path.c_str());
+ EvictFileFromSystemCache(FilePath::FromWStringHack(cur_dest_path));
}
} while (FindNextFile(fh, &fd));