Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(220)

Side by Side Diff: base/file_util_win.cc

Issue 93263002: Move some more file utils to the base namespace. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « base/file_util_unittest.cc ('k') | base/files/file_util_proxy.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #include "base/file_util.h" 5 #include "base/file_util.h"
6 6
7 #include <windows.h> 7 #include <windows.h>
8 #include <psapi.h> 8 #include <psapi.h>
9 #include <shellapi.h> 9 #include <shellapi.h>
10 #include <shlobj.h> 10 #include <shlobj.h>
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 } 206 }
207 207
208 bool DirectoryExists(const FilePath& path) { 208 bool DirectoryExists(const FilePath& path) {
209 ThreadRestrictions::AssertIOAllowed(); 209 ThreadRestrictions::AssertIOAllowed();
210 DWORD fileattr = GetFileAttributes(path.value().c_str()); 210 DWORD fileattr = GetFileAttributes(path.value().c_str());
211 if (fileattr != INVALID_FILE_ATTRIBUTES) 211 if (fileattr != INVALID_FILE_ATTRIBUTES)
212 return (fileattr & FILE_ATTRIBUTE_DIRECTORY) != 0; 212 return (fileattr & FILE_ATTRIBUTE_DIRECTORY) != 0;
213 return false; 213 return false;
214 } 214 }
215 215
216 } // namespace base
217
218 // -----------------------------------------------------------------------------
219
220 namespace file_util {
221
222 using base::DirectoryExists;
223 using base::FilePath;
224 using base::kFileShareAll;
225
226 bool GetTempDir(FilePath* path) { 216 bool GetTempDir(FilePath* path) {
227 base::ThreadRestrictions::AssertIOAllowed(); 217 ThreadRestrictions::AssertIOAllowed();
228 218
229 wchar_t temp_path[MAX_PATH + 1]; 219 wchar_t temp_path[MAX_PATH + 1];
230 DWORD path_len = ::GetTempPath(MAX_PATH, temp_path); 220 DWORD path_len = ::GetTempPath(MAX_PATH, temp_path);
231 if (path_len >= MAX_PATH || path_len <= 0) 221 if (path_len >= MAX_PATH || path_len <= 0)
232 return false; 222 return false;
233 // TODO(evanm): the old behavior of this function was to always strip the 223 // TODO(evanm): the old behavior of this function was to always strip the
234 // trailing slash. We duplicate this here, but it shouldn't be necessary 224 // trailing slash. We duplicate this here, but it shouldn't be necessary
235 // when everyone is using the appropriate FilePath APIs. 225 // when everyone is using the appropriate FilePath APIs.
236 *path = FilePath(temp_path).StripTrailingSeparators(); 226 *path = FilePath(temp_path).StripTrailingSeparators();
237 return true; 227 return true;
238 } 228 }
239 229
240 bool GetShmemTempDir(FilePath* path, bool executable) { 230 bool GetShmemTempDir(bool executable, FilePath* path) {
241 return GetTempDir(path); 231 return GetTempDir(path);
242 } 232 }
243 233
234 } // namespace base
235
236 // -----------------------------------------------------------------------------
237
238 namespace file_util {
239
240 using base::DirectoryExists;
241 using base::FilePath;
242 using base::kFileShareAll;
243
244 bool CreateTemporaryFile(FilePath* path) { 244 bool CreateTemporaryFile(FilePath* path) {
245 base::ThreadRestrictions::AssertIOAllowed(); 245 base::ThreadRestrictions::AssertIOAllowed();
246 246
247 FilePath temp_file; 247 FilePath temp_file;
248 248
249 if (!GetTempDir(path)) 249 if (!GetTempDir(path))
250 return false; 250 return false;
251 251
252 if (CreateTemporaryFileInDir(*path, &temp_file)) { 252 if (CreateTemporaryFileInDir(*path, &temp_file)) {
253 *path = temp_file; 253 *path = temp_file;
(...skipping 490 matching lines...) Expand 10 before | Expand all | Expand 10 after
744 // Like Move, this function is not transactional, so we just 744 // Like Move, this function is not transactional, so we just
745 // leave the copied bits behind if deleting from_path fails. 745 // leave the copied bits behind if deleting from_path fails.
746 // If to_path exists previously then we have already overwritten 746 // If to_path exists previously then we have already overwritten
747 // it by now, we don't get better off by deleting the new bits. 747 // it by now, we don't get better off by deleting the new bits.
748 } 748 }
749 return false; 749 return false;
750 } 750 }
751 751
752 } // namespace internal 752 } // namespace internal
753 } // namespace base 753 } // namespace base
OLDNEW
« no previous file with comments | « base/file_util_unittest.cc ('k') | base/files/file_util_proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698