Index: base/test/test_file_util_posix.cc |
diff --git a/base/test/test_file_util_posix.cc b/base/test/test_file_util_posix.cc |
index 6be1c82e39d27a6f0d07f1e9eef3504d433253af..ae61b24f9e123e52df44a153433eae66a263e303 100644 |
--- a/base/test/test_file_util_posix.cc |
+++ b/base/test/test_file_util_posix.cc |
@@ -78,82 +78,6 @@ bool DieFileDie(const base::FilePath& file, bool recurse) { |
return file_util::Delete(file, recurse); |
} |
-// Mostly a verbatim copy of CopyDirectory |
-bool CopyRecursiveDirNoCache(const base::FilePath& source_dir, |
- const base::FilePath& dest_dir) { |
- char top_dir[PATH_MAX]; |
- if (base::strlcpy(top_dir, source_dir.value().c_str(), |
- arraysize(top_dir)) >= arraysize(top_dir)) { |
- return false; |
- } |
- |
- // This function does not properly handle destinations within the source |
- base::FilePath real_to_path = dest_dir; |
- if (PathExists(real_to_path)) { |
- if (!AbsolutePath(&real_to_path)) |
- return false; |
- } else { |
- real_to_path = real_to_path.DirName(); |
- if (!AbsolutePath(&real_to_path)) |
- return false; |
- } |
- if (real_to_path.value().compare(0, source_dir.value().size(), |
- source_dir.value()) == 0) |
- return false; |
- |
- bool success = true; |
- int traverse_type = FileEnumerator::FILES | |
- FileEnumerator::SHOW_SYM_LINKS | FileEnumerator::DIRECTORIES; |
- FileEnumerator traversal(source_dir, true, traverse_type); |
- |
- // dest_dir may not exist yet, start the loop with dest_dir |
- FileEnumerator::FindInfo info; |
- base::FilePath current = source_dir; |
- if (stat(source_dir.value().c_str(), &info.stat) < 0) { |
- DLOG(ERROR) << "CopyRecursiveDirNoCache() couldn't stat source directory: " |
- << source_dir.value() << " errno = " << errno; |
- success = false; |
- } |
- |
- while (success && !current.empty()) { |
- // |current| is the source path, including source_dir, so paste |
- // the suffix after source_dir onto dest_dir to create the target_path. |
- std::string suffix(¤t.value().c_str()[source_dir.value().size()]); |
- // Strip the leading '/' (if any). |
- if (!suffix.empty()) { |
- DCHECK_EQ('/', suffix[0]); |
- suffix.erase(0, 1); |
- } |
- const base::FilePath target_path = dest_dir.Append(suffix); |
- |
- if (S_ISDIR(info.stat.st_mode)) { |
- if (mkdir(target_path.value().c_str(), info.stat.st_mode & 01777) != 0 && |
- errno != EEXIST) { |
- DLOG(ERROR) << "CopyRecursiveDirNoCache() couldn't create directory: " |
- << target_path.value() << " errno = " << errno; |
- success = false; |
- } |
- } else if (S_ISREG(info.stat.st_mode)) { |
- if (CopyFile(current, target_path)) { |
- success = EvictFileFromSystemCache(target_path); |
- DCHECK(success); |
- } else { |
- DLOG(ERROR) << "CopyRecursiveDirNoCache() couldn't create file: " |
- << target_path.value(); |
- success = false; |
- } |
- } else { |
- DLOG(WARNING) << "CopyRecursiveDirNoCache() skipping non-regular file: " |
- << current.value(); |
- } |
- |
- current = traversal.Next(); |
- traversal.GetFindInfo(&info); |
- } |
- |
- return success; |
-} |
- |
#if !defined(OS_LINUX) && !defined(OS_MACOSX) |
bool EvictFileFromSystemCache(const base::FilePath& file) { |
// There doesn't seem to be a POSIX way to cool the disk cache. |