Second try at submitting 61462.

BUG=none
TEST=in file_system_operation_unittest.cc

Review URL: http://codereview.chromium.org/3526018

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61468 0039d316-1c4b-4281-b951-d872f2087c98


CrOS-Libchrome-Original-Commit: 7eb68a27b4edcf33b6f8edeb5a133d7397409cd8
diff --git a/base/file_util_proxy.h b/base/file_util_proxy.h
index 081c11b..32b7863 100644
--- a/base/file_util_proxy.h
+++ b/base/file_util_proxy.h
@@ -138,7 +138,7 @@
 
   // Writes to a file. If |offset| is greater than the length of the file,
   // |false| is returned. On success, the file pointer is moved to position
-  // |offset + bytes_to_write| in the file. If The callback can be NULL.
+  // |offset + bytes_to_write| in the file. The callback can be NULL.
   static bool Write(
       scoped_refptr<MessageLoopProxy> message_loop_proxy,
       base::PlatformFile file,
@@ -169,7 +169,16 @@
   static bool Truncate(
       scoped_refptr<MessageLoopProxy> message_loop_proxy,
       base::PlatformFile file,
-      long long length,
+      int64 length,
+      StatusCallback* callback);
+
+  // Truncates a file to the given length. If |length| is greater than the
+  // current length of the file, the file will be extended with zeroes.
+  // The callback can be NULL.
+  static bool Truncate(
+      scoped_refptr<MessageLoopProxy> message_loop_proxy,
+      const FilePath& path,
+      int64 length,
       StatusCallback* callback);
 
   // Flushes a file. The callback can be NULL.