summaryrefslogtreecommitdiffstats
path: root/base/file_util_win.cc
diff options
context:
space:
mode:
authortzik@chromium.org <tzik@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-19 05:03:03 +0000
committertzik@chromium.org <tzik@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-07-19 05:03:03 +0000
commitf1ddaa4a69d5e6d17d1fc9a1062c26be4712d4fd (patch)
tree31e0799180f03a47db0f3e0377b9eadcec7dcf7c /base/file_util_win.cc
parent4012362511707f3f1db4fb63248f0cc5b6d7f990 (diff)
downloadchromium_src-f1ddaa4a69d5e6d17d1fc9a1062c26be4712d4fd.zip
chromium_src-f1ddaa4a69d5e6d17d1fc9a1062c26be4712d4fd.tar.gz
chromium_src-f1ddaa4a69d5e6d17d1fc9a1062c26be4712d4fd.tar.bz2
Adding FileUtilProxy::Entry::{size,last_modified_time},
and FileEnumerator::{GetFilesize,GetLastModifiedTime}. BUG=89134 TEST=None Review URL: http://codereview.chromium.org/7355013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92975 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/file_util_win.cc')
-rw-r--r--base/file_util_win.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/base/file_util_win.cc b/base/file_util_win.cc
index 93bfe1d..9a138a3 100644
--- a/base/file_util_win.cc
+++ b/base/file_util_win.cc
@@ -10,6 +10,8 @@
#include <shellapi.h>
#include <shlobj.h>
#include <time.h>
+
+#include <limits>
#include <string>
#include "base/file_path.h"
@@ -893,6 +895,20 @@ FilePath FileEnumerator::GetFilename(const FindInfo& find_info) {
return FilePath(find_info.cFileName);
}
+// static
+int64 FileEnumerator::GetFilesize(const FindInfo& find_info) {
+ ULARGE_INTEGER size;
+ size.HighPart = find_info.nFileSizeHigh;
+ size.LowPart = find_info.nFileSizeLow;
+ DCHECK_LE(size.QuadPart, std::numeric_limits<int64>::max());
+ return static_cast<int64>(size.QuadPart);
+}
+
+// static
+base::Time FileEnumerator::GetLastModifiedTime(const FindInfo& find_info) {
+ return base::Time::FromFileTime(find_info.ftLastWriteTime);
+}
+
FilePath FileEnumerator::Next() {
base::ThreadRestrictions::AssertIOAllowed();