From 04e76674fea0883c5c7eb5d50b0564159aea2601 Mon Sep 17 00:00:00 2001 From: Ryan VanderMeulen Date: Sat, 19 Mar 2016 21:26:57 -0400 Subject: [PATCH] Backed out changeset ed4fe05c868d (bug 125813) for Android test_basic.html failures. --- dom/filesystem/DeviceStorageFileSystem.cpp | 11 ----------- dom/filesystem/DeviceStorageFileSystem.h | 3 --- dom/filesystem/Directory.cpp | 8 +------- dom/filesystem/FileSystemBase.h | 3 --- dom/filesystem/OSFileSystem.cpp | 11 ----------- dom/filesystem/OSFileSystem.h | 3 --- dom/filesystem/tests/script_fileList.js | 12 ++++++++++++ 7 files changed, 13 insertions(+), 38 deletions(-) diff --git a/dom/filesystem/DeviceStorageFileSystem.cpp b/dom/filesystem/DeviceStorageFileSystem.cpp index 36db6f54ea58..06437115e7ad 100644 --- a/dom/filesystem/DeviceStorageFileSystem.cpp +++ b/dom/filesystem/DeviceStorageFileSystem.cpp @@ -62,17 +62,6 @@ DeviceStorageFileSystem::~DeviceStorageFileSystem() { } -already_AddRefed -DeviceStorageFileSystem::Clone() -{ - RefPtr fs = - new DeviceStorageFileSystem(mStorageType, mStorageName); - - fs->mWindowId = mWindowId; - - return fs.forget(); -} - void DeviceStorageFileSystem::Init(nsDOMDeviceStorage* aDeviceStorage) { diff --git a/dom/filesystem/DeviceStorageFileSystem.h b/dom/filesystem/DeviceStorageFileSystem.h index 32168bc82553..e14202ae0a8e 100644 --- a/dom/filesystem/DeviceStorageFileSystem.h +++ b/dom/filesystem/DeviceStorageFileSystem.h @@ -27,9 +27,6 @@ public: // Overrides FileSystemBase - virtual already_AddRefed - Clone() override; - virtual void Shutdown() override; diff --git a/dom/filesystem/Directory.cpp b/dom/filesystem/Directory.cpp index edab5908f54f..fd46ad15a3ef 100644 --- a/dom/filesystem/Directory.cpp +++ b/dom/filesystem/Directory.cpp @@ -158,6 +158,7 @@ Directory::Directory(nsISupports* aParent, DirectoryType aType, FileSystemBase* aFileSystem) : mParent(aParent) + , mFileSystem(aFileSystem) , mFile(aFile) , mType(aType) { @@ -165,13 +166,6 @@ Directory::Directory(nsISupports* aParent, MOZ_ASSERT(aFile); // aFileSystem can be null. In this case we create a OSFileSystem when needed. - if (aFileSystem) { - // More likely, this is a OSFileSystem. This object keeps a reference of - // mParent but it's not cycle collectable and to avoid manual - // addref/release, it's better to have 1 object per directory. For this - // reason we clone it here. - mFileSystem = aFileSystem->Clone(); - } } Directory::~Directory() diff --git a/dom/filesystem/FileSystemBase.h b/dom/filesystem/FileSystemBase.h index 6dc97247f4b5..eb2c782baa92 100644 --- a/dom/filesystem/FileSystemBase.h +++ b/dom/filesystem/FileSystemBase.h @@ -34,9 +34,6 @@ public: virtual void SerializeDOMPath(nsAString& aOutput) const = 0; - virtual already_AddRefed - Clone() = 0; - virtual nsISupports* GetParentObject() const; diff --git a/dom/filesystem/OSFileSystem.cpp b/dom/filesystem/OSFileSystem.cpp index 50335a982b4d..79743e731a1e 100644 --- a/dom/filesystem/OSFileSystem.cpp +++ b/dom/filesystem/OSFileSystem.cpp @@ -30,17 +30,6 @@ OSFileSystem::OSFileSystem(const nsAString& aRootDir) #endif } -already_AddRefed -OSFileSystem::Clone() -{ - RefPtr fs = new OSFileSystem(mLocalRootPath); - if (mParent) { - fs->Init(mParent); - } - - return fs.forget(); -} - void OSFileSystem::Init(nsISupports* aParent) { diff --git a/dom/filesystem/OSFileSystem.h b/dom/filesystem/OSFileSystem.h index bf0708cf9bba..f3c329a22ea4 100644 --- a/dom/filesystem/OSFileSystem.h +++ b/dom/filesystem/OSFileSystem.h @@ -22,9 +22,6 @@ public: // Overrides FileSystemBase - virtual already_AddRefed - Clone() override; - virtual nsISupports* GetParentObject() const override; diff --git a/dom/filesystem/tests/script_fileList.js b/dom/filesystem/tests/script_fileList.js index 81fd6b38d1ad..8382958f328f 100644 --- a/dom/filesystem/tests/script_fileList.js +++ b/dom/filesystem/tests/script_fileList.js @@ -1,6 +1,18 @@ var { classes: Cc, interfaces: Ci, utils: Cu } = Components; Cu.importGlobalProperties(["File"]); +addMessageListener("file.open", function () { + var testFile = Cc["@mozilla.org/file/directory_service;1"] + .getService(Ci.nsIDirectoryService) + .QueryInterface(Ci.nsIProperties) + .get("ProfD", Ci.nsIFile); + testFile.append("prefs.js"); + + sendAsyncMessage("file.opened", { + file: new File(testFile) + }); +}); + addMessageListener("dir.open", function () { var testFile = Cc["@mozilla.org/file/directory_service;1"] .getService(Ci.nsIDirectoryService)