This reverts commit 09a61a1fe1.
Revert "Bug 259356 - Add Glean labeled counters for profile creation place r=profiles-reviewers,mossop"
This reverts commit 06a34f50a1.
Revert "Bug 259356 - Add integration testing of XDG handling via Marionette r=webdriver-reviewers,whimboo,mossop"
This reverts commit a8da40a192.
Revert "Bug 259356 - Update gtests for nsXREDirProvider with XDG handling support r=xpcom-reviewers,nika"
This reverts commit 0932acc4d7.
Revert "Bug 259356 - Add support for the XDG Base Directory Specification r=stransky,glandium,gcp"
This reverts commit 0d68818ce8.
Revert "Bug 259356 - Add gtests on nsXREDirProvider directories prior XDG handling r=xpcom-reviewers,nika"
This reverts commit 74dce33ae5.
This reverts commit 2464eb4fc5.
Revert "Bug 259356 - Add Glean labeled counters for profile creation place r=profiles-reviewers,mossop"
This reverts commit c8b7baf567.
Revert "Bug 259356 - Add integration testing of XDG handling via Marionette r=webdriver-reviewers,whimboo,mossop"
This reverts commit a2d6b4241c.
Revert "Bug 259356 - Update gtests for nsXREDirProvider with XDG handling support r=xpcom-reviewers,nika"
This reverts commit 57cbb389f0.
Revert "Bug 259356 - Add support for the XDG Base Directory Specification r=stransky,glandium,gcp"
This reverts commit 18fecc6a2e.
Revert "Bug 259356 - Add gtests on nsXREDirProvider directories prior XDG handling r=xpcom-reviewers,nika"
This reverts commit c4fb3d992c.
In this change we:
- stop treating the nsPluginDirServiceProvider as a directory provider, as its
GetFile implementation was a no-op anyway - registering it didn't make any
difference.
- stop treating it as a class entirely, because the PLID getters were already
static, so instantiating it also didn't do anything.
- move IO from the plugin directory list provider and the Windows-only PLID
getters into nsPluginHost. This enables us to move it off of the main thread
later - the directory getting has to happen on the main thread, but we can
postpone further checks on the nsIFile instances.
- in the process, stop doing exists() calls on files because we can fail more
lazily. This allows us to remove more allowlist entries from
browser_startup_mainthreadio, though the `isDirectory` calls will actually
still cause IO - they don't seem to create IO markers in the profiler.
We will move this IO away from the main thread in subsequent commits.
Depends on D48328
Differential Revision: https://phabricator.services.mozilla.com/D48329
In this change we:
- stop treating the nsPluginDirServiceProvider as a directory provider, as its
GetFile implementation was a no-op anyway - registering it didn't make any
difference.
- stop treating it as a class entirely, because the PLID getters were already
static, so instantiating it also didn't do anything.
- move IO from the plugin directory list provider and the Windows-only PLID
getters into nsPluginHost. This enables us to move it off of the main thread
later - the directory getting has to happen on the main thread, but we can
postpone further checks on the nsIFile instances.
- in the process, stop doing exists() calls on files because we can fail more
lazily. This allows us to remove more allowlist entries from
browser_startup_mainthreadio, though the `isDirectory` calls will actually
still cause IO - they don't seem to create IO markers in the profiler.
We will move this IO away from the main thread in subsequent commits.
Depends on D48328
Differential Revision: https://phabricator.services.mozilla.com/D48329
This allows JS callers to automatically get the correct types during
interation, without having to explicitly specify them.
Differential Revision: https://phabricator.services.mozilla.com/D3728
In order to allow JS callers to use nsISimpleEnumerator instances with the JS
iteration protocol, we'll need to additional methods to every instance. Since
we currently have a large number of unrelated implementations, it would be
best if they could share the same implementation for the JS portion of the
protocol.
This patch adds a stub nsSimpleEnumerator base class, and updates all existing
implementations to inherit from it. A follow-up will add a new base interface
to this class, and implement the additional functionality required for JS
iteration.
Differential Revision: https://phabricator.services.mozilla.com/D3725
(Path is actually r=froydnj.)
Bug 1400459 devirtualized nsIAtom so that it is no longer a subclass of
nsISupports. This means that nsAtom is now a better name for it than nsIAtom.
MozReview-Commit-ID: 91U22X2NydP
This is straightforward, with only two notable things.
- `#include "nsXPIDLString.h" is replaced with `#include "nsString.h"`
throughout, because all nsXPIDLString.h did was include nsString.h. The
exception is for files which already include nsString.h, in which case the
patch just removes the nsXPIDLString.h inclusion.
- The patch removes the |xpidl_string| gtest, but improves the |voided| test to
cover some of its ground, e.g. testing Adopt(nullptr).
Nothing apart the code that was just removed uses those keys, so remove them.
Actually, there is a use in Seamonkey, but considering they're shipping with
omnijar, the code expecting the directory has not been working as designed for
a while, so they can fixup and remove that use as well.
Calling QueryInterface with a statically known IID should typically not
be necessary. In those cases where it's not, the compiler can do the
cast for us, though we have to supply the reference-counting that
QueryInterface would do.
In passing, several redundant null-checks for the result of |new T| have
been deleted.