| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This file contains utility functions for dealing with the local | 5 // This file contains utility functions for dealing with the local |
| 6 // filesystem. | 6 // filesystem. |
| 7 | 7 |
| 8 #ifndef BASE_FILE_UTIL_H_ | 8 #ifndef BASE_FILE_UTIL_H_ |
| 9 #define BASE_FILE_UTIL_H_ | 9 #define BASE_FILE_UTIL_H_ |
| 10 | 10 |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 94 | 94 |
| 95 // Same as Move but allows paths with traversal components. | 95 // Same as Move but allows paths with traversal components. |
| 96 // Use only with extreme care. | 96 // Use only with extreme care. |
| 97 BASE_EXPORT bool MoveUnsafe(const base::FilePath& from_path, | 97 BASE_EXPORT bool MoveUnsafe(const base::FilePath& from_path, |
| 98 const base::FilePath& to_path); | 98 const base::FilePath& to_path); |
| 99 | 99 |
| 100 // Renames file |from_path| to |to_path|. Both paths must be on the same | 100 // Renames file |from_path| to |to_path|. Both paths must be on the same |
| 101 // volume, or the function will fail. Destination file will be created | 101 // volume, or the function will fail. Destination file will be created |
| 102 // if it doesn't exist. Prefer this function over Move when dealing with | 102 // if it doesn't exist. Prefer this function over Move when dealing with |
| 103 // temporary files. On Windows it preserves attributes of the target file. | 103 // temporary files. On Windows it preserves attributes of the target file. |
| 104 // Returns true on success. | 104 // Returns true on success, leaving *error unchanged. |
| 105 // Returns false on failure and sets *error appropriately, if it is non-NULL. |
| 106 BASE_EXPORT bool ReplaceFileAndGetError(const base::FilePath& from_path, |
| 107 const base::FilePath& to_path, |
| 108 base::PlatformFileError* error); |
| 109 |
| 110 // Backward-compatible convenience method for the above. |
| 105 BASE_EXPORT bool ReplaceFile(const base::FilePath& from_path, | 111 BASE_EXPORT bool ReplaceFile(const base::FilePath& from_path, |
| 106 const base::FilePath& to_path); | 112 const base::FilePath& to_path); |
| 107 | 113 |
| 108 // Copies a single file. Use CopyDirectory to copy directories. | 114 // Copies a single file. Use CopyDirectory to copy directories. |
| 109 // This function fails if either path contains traversal components ('..'). | 115 // This function fails if either path contains traversal components ('..'). |
| 110 BASE_EXPORT bool CopyFile(const base::FilePath& from_path, | 116 BASE_EXPORT bool CopyFile(const base::FilePath& from_path, |
| 111 const base::FilePath& to_path); | 117 const base::FilePath& to_path); |
| 112 | 118 |
| 113 // Same as CopyFile but allows paths with traversal components. | 119 // Same as CopyFile but allows paths with traversal components. |
| 114 // Use only with extreme care. | 120 // Use only with extreme care. |
| (...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 546 | 552 |
| 547 // Attempts determine the FileSystemType for |path|. | 553 // Attempts determine the FileSystemType for |path|. |
| 548 // Returns false if |path| doesn't exist. | 554 // Returns false if |path| doesn't exist. |
| 549 BASE_EXPORT bool GetFileSystemType(const base::FilePath& path, | 555 BASE_EXPORT bool GetFileSystemType(const base::FilePath& path, |
| 550 FileSystemType* type); | 556 FileSystemType* type); |
| 551 #endif | 557 #endif |
| 552 | 558 |
| 553 } // namespace file_util | 559 } // namespace file_util |
| 554 | 560 |
| 555 #endif // BASE_FILE_UTIL_H_ | 561 #endif // BASE_FILE_UTIL_H_ |
| OLD | NEW |