There's no reason for them to be separate, and we can use the |kind| field to
distinguish the two kinds when necessary.
This lets us remove the duplication of ScriptableToString(), ToUTF8String(),
and ScriptableEquals().
It also lets us use |Atom*| pointers instead of |nsIAtom*| pointers in various
places within nsAtomTable.cpp, which de-virtualizes various calls and removes
the need for some static_casts.
--HG--
extra : rebase_source : 2f9183323446e353f8cc5dcedf57d9dc9a38f0a7
Test drawArray() after calling deleteBuffer() for the binded buffer.
MozReview-Commit-ID: 306tsklZK4L
--HG--
extra : rebase_source : 9ae4b33accc57406695ad6ee8f3d71fdf4d58442
nsQueryReferent is defined as an nsCOMPtr_helper, which implies that
calling its operator() method requires a virtual call. While
nsQueryReferent is marked `final`, compiler inlining decisions make it
impossible to de-virtualize the call to operator(). However, we have
many other classes returned by do_* functions that nsCOMPtr handles
directly, requiring no extra virtual calls, and we can give
nsQueryReferent the same treatment.
If the buffer status was changed, we should do the ValidateBufferFetching() again.
MozReview-Commit-ID: 7czQFT3qauE
--HG--
extra : rebase_source : ee2635289d0d3e7c115b2a9d9f52c3ae876830d5
This will enable lazy loading symbols for a grip if needed.
This patch introduce a new SymbolIteratorActor, which is similar
to PropertyIteratorActor but with a data structure that better
fits symbols, and how we already handle them, i.e. an `ownSymbols`
array property (and not an `ownProperties` object like PropertyIteratorActor).
We take this as an opportunity to add a test for enumSymbols, but also
for enumProperties that did not have server unit tests (it is only tested
in the frontend with the variable view, which might be deprecated at some
point).
MozReview-Commit-ID: IEIKA8zwH90
--HG--
extra : rebase_source : 377526321e04e28ffc58ed7af7f4325b6e1ee66d
Version 4 of the Google Safe Browsing server will return a 404 if any of the
application reputation lists are requested on Android. As a result, we should
avoid these threat types from being sent along with ANDROID_PLATFORM.
MozReview-Commit-ID: 6TUBVxe455y
--HG--
extra : rebase_source : dee095c008f4d328f359c66d20f0cc2dfcd109f3
extra : source : 5d6338807c6b21b7672236cac01b13bd75155225
The FrameLoaderOwner interface has been implemented in WebIDL for several
years now, so these QIs are simply unnecessary overhead.
MozReview-Commit-ID: LAzvfm5Qhy0
--HG--
extra : rebase_source : 2495c07df21c474f5fabc257ff4db43b0d8047e4
We allow swapping frameloaders between unrelated documents, so we need to
reparent wrappers when the owner content changes.
MozReview-Commit-ID: LNIf4ZrCZLo
--HG--
extra : rebase_source : 8041d1601962d61e675e78e3447c7772eee89df0
XPConnect wrapper overhead for this interface has been showing up heavily in a
lot of my profiles, in some places accounting for 50ms of the 80ms we spend
getting getting <browser> messageManagers. This improves the situation
considerably.
MozReview-Commit-ID: 9d1hCORxsYG
--HG--
rename : dom/base/nsIFrameLoader.idl => dom/webidl/FrameLoader.webidl
extra : rebase_source : d8a1fc1a19632ba36a9fc6f63873f7534671a13b