Index: base/test_file_util_posix.cc |
diff --git a/base/test_file_util_posix.cc b/base/test_file_util_posix.cc |
index f55421c995ab31f67d3fdd3d821f2dea13057d60..38aaae2b5036465eb6894f6fe8e8bd47812ff6b8 100644 |
--- a/base/test_file_util_posix.cc |
+++ b/base/test_file_util_posix.cc |
@@ -44,13 +44,14 @@ bool CopyRecursiveDirNoCache(const std::wstring& source_dir, |
std::string suffix(&ent->fts_path[from_path.value().size()]); |
// Strip the leading '/' (if any). |
if (!suffix.empty()) { |
- DCHECK(suffix[0] == '/'); |
+ DCHECK_EQ('/', suffix[0]); |
suffix.erase(0, 1); |
} |
const FilePath target_path = to_path.Append(suffix); |
switch (ent->fts_info) { |
case FTS_D: // Preorder directory. |
// Try creating the target dir, continuing on it if it exists already. |
+ // Rely on the user's umask to produce correct permissions. |
if (mkdir(target_path.value().c_str(), 0777) != 0) { |
if (errno != EEXIST) |
error = errno; |
@@ -87,10 +88,10 @@ bool CopyRecursiveDirNoCache(const std::wstring& source_dir, |
break; |
case FTS_SL: // Symlink. |
case FTS_SLNONE: // Symlink with broken target. |
- LOG(WARNING) << "skipping symbolic link."; |
+ LOG(WARNING) << "skipping symbolic link: " << ent->fts_path; |
continue; |
case FTS_DEFAULT: // Some other sort of file. |
- LOG(WARNING) << "skipping weird file."; |
+ LOG(WARNING) << "skipping file of unknown type: " << ent->fts_path; |
continue; |
default: |
NOTREACHED(); |