| Index: webrtc/test/testsupport/fileutils.cc
|
| diff --git a/webrtc/test/testsupport/fileutils.cc b/webrtc/test/testsupport/fileutils.cc
|
| index 02ef06580bbcec4203d46ac1c23f42d4e279ebd6..aab01a5220d3fda701540104c8835e372aae1d05 100644
|
| --- a/webrtc/test/testsupport/fileutils.cc
|
| +++ b/webrtc/test/testsupport/fileutils.cc
|
| @@ -40,6 +40,7 @@
|
|
|
| #include <memory>
|
|
|
| +#include "webrtc/base/checks.h"
|
| #include "webrtc/typedefs.h" // For architecture defines
|
|
|
| namespace webrtc {
|
| @@ -126,7 +127,7 @@ std::string WorkingDir() {
|
| return kRootDirName;
|
| }
|
|
|
| -#else // WEBRTC_ANDROID
|
| +#else // WEBRTC_ANDROID
|
|
|
| std::string ProjectRootPath() {
|
| #if defined(WEBRTC_IOS)
|
| @@ -232,6 +233,26 @@ bool CreateDir(const std::string& directory_name) {
|
| return true;
|
| }
|
|
|
| +size_t RemoveDirRecursively(const rtc::Pathname& dir) {
|
| + if (!DirExists(dir.pathname())) { return false; }
|
| + rtc::DirectoryIterator it;
|
| + it.Iterate(dir);
|
| + size_t deleted_entries = 0;
|
| + do {
|
| + const std::string entry_name = it.Name();
|
| + if (entry_name == "." || entry_name == "..") { continue; }
|
| +
|
| + const rtc::Pathname entry = it.Path();
|
| + if (it.IsDirectory()) {
|
| + deleted_entries += RemoveDirRecursively(entry);
|
| + } else {
|
| + if (RemoveFile(entry.pathname())) { deleted_entries++; }
|
| + }
|
| + } while (it.Next());
|
| + RemoveDir(dir.pathname());
|
| + return deleted_entries + 1;
|
| +}
|
| +
|
| bool RemoveDir(const std::string& directory_name) {
|
| #ifdef WIN32
|
| return RemoveDirectoryA(directory_name.c_str()) != FALSE;
|
|
|