Revert of Base: Make FileProxy automaticaly close the file on a worker thread. (https://codereview.chromium.org/231703002/)

Reason for revert:
Triggering AssertIOAllowed on a handful of Blink LayoutTests.

Original issue's description:
> Base: Make FileProxy automaticaly close the file on a worker thread.
> 
> This CL removes the restriction that callers should call Close before
> deleting the object if they want to make sure the file is not closed
> on the current thread.
> 
> BUG=322664
> TEST=base_unittests
> 
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=263675

TBR=willchan@chromium.org,rvargas@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=322664

Review URL: https://codereview.chromium.org/238383003

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


CrOS-Libchrome-Original-Commit: 850a6e979ec81047da2f126c11f620e77e1f3ac9
diff --git a/base/files/file_proxy.cc b/base/files/file_proxy.cc
index fa04d7c..b517761 100644
--- a/base/files/file_proxy.cc
+++ b/base/files/file_proxy.cc
@@ -13,38 +13,27 @@
 #include "base/task_runner.h"
 #include "base/task_runner_util.h"
 
-namespace {
-
-void FileDeleter(base::File file) {
-}
-
-}  // namespace
-
 namespace base {
 
 class FileHelper {
  public:
    FileHelper(FileProxy* proxy, File file)
       : file_(file.Pass()),
-        error_(File::FILE_ERROR_FAILED),
-        task_runner_(proxy->task_runner()),
-        proxy_(AsWeakPtr(proxy)) {
+        proxy_(AsWeakPtr(proxy)),
+        error_(File::FILE_ERROR_FAILED) {
    }
 
    void PassFile() {
      if (proxy_)
        proxy_->SetFile(file_.Pass());
-     else if (file_.IsValid())
-       task_runner_->PostTask(FROM_HERE, Bind(&FileDeleter, Passed(&file_)));
    }
 
  protected:
   File file_;
+  WeakPtr<FileProxy> proxy_;
   File::Error error_;
 
  private:
-  scoped_refptr<TaskRunner> task_runner_;
-  WeakPtr<FileProxy> proxy_;
   DISALLOW_COPY_AND_ASSIGN(FileHelper);
 };
 
@@ -230,12 +219,13 @@
 
 }  // namespace
 
+FileProxy::FileProxy() : task_runner_(NULL) {
+}
+
 FileProxy::FileProxy(TaskRunner* task_runner) : task_runner_(task_runner) {
 }
 
 FileProxy::~FileProxy() {
-  if (file_.IsValid())
-    task_runner_->PostTask(FROM_HERE, Bind(&FileDeleter, Passed(&file_)));
 }
 
 bool FileProxy::CreateOrOpen(const FilePath& file_path,