The changeset has been generated automatically through:
./mach static-analysis check --output ./clang-tidy-bugprone.json --format json --fix
followed by manual adjustment when needed or when the auto-fixer bailed out.
This paves the way for Bug 2023527
Differential Revision: https://phabricator.services.mozilla.com/D287941
The changeset has been generated automatically through:
./mach static-analysis check --output ./clang-tidy-bugprone.json --format json --fix
followed by manual adjustment when needed or when the auto-fixer bailed out.
This paves the way for Bug 2023527
Differential Revision: https://phabricator.services.mozilla.com/D287941
Image Encoders will be able to make use of a metadata
(aka randomization) key that will influence the resulting output
image.
This patch just adds that variable into all the API surfaces it
will need to be in to be accessible at the correct layer where
we will use it.
Differential Revision: https://phabricator.services.mozilla.com/D267097
This reverts commit d4cf73ac94.
Revert "Bug 1980264: Test Infra Fixes r=timhuang"
This reverts commit 992c24e4cf.
Revert "Bug 1980264: Implement a streaming randomization approach for PNG images r=tnikkel"
This reverts commit 5910c78f61.
Revert "Bug 1980264: Wire up an alternate efficient randomization layer r=timhuang"
This reverts commit a8a220b58a.
Revert "Bug 1980264: Plumb metatadata down to the Image Encoders r=tnikkel"
This reverts commit 3487904284.
Revert "Bug 1980264: Rename a variable to be more generic r=timhuang"
This reverts commit b6b02cefea.
Revert "Bug 1980264: Clang Formatting and a missing Permission Check r=timhuang"
This reverts commit f3c68965b8.
Image Encoders will be able to make use of a metadata
(aka randomization) key that will influence the resulting output
image.
This patch just adds that variable into all the API surfaces it
will need to be in to be accessible at the correct layer where
we will use it.
Differential Revision: https://phabricator.services.mozilla.com/D267097
A number of public APIs in Skia have changed since the update to m125,
so various places in Gecko need to be updated to track it.
Differential Revision: https://phabricator.services.mozilla.com/D209821
A number of public APIs in Skia have changed since the update to m125,
so various places in Gecko need to be updated to track it.
Differential Revision: https://phabricator.services.mozilla.com/D209821
We'll probably want to do something more accurate in the future with a
custom clang static analysis pass which validates that XPIDL interfaces
have the expected vtable and struct layout, however doing so would be
more involved than the string matching done in this patch.
In addition to checking for extra virtual methods, we'll likely also
want to check for data members on interfaces, and reject them unless the
class is marked as `[builtinclass]` in addition to some other attribute
which we'll need to add to prevent them from being implemented in Rust
(as c++ data members will not be reflected by the rust macro).
There were 2 instances of a comment which contained the word 'virtual'
within a CDATA block. These comments were moved out of the CDATA block
to avoid triggering the error.
Differential Revision: https://phabricator.services.mozilla.com/D151068
Current gecko dispatches tasks of releasing image::Image to main thread at some places. The task was dispatched individually. Then there were cases that the releasing took long time. It increased peak memory usage and caused a problem like Bug 1639280. When main thread is very busy like WebGL, it takes longer time until the Image is released on main thread. If Images are released quickly on main thread, we could reduce peak memory usage.
When SurfaceCache::ReleaseImageOnMainThread() is called, there could be already an ongoing task for releasing Image. It could reduce a duration until release on main thread.
Differential Revision: https://phabricator.services.mozilla.com/D82864
It's possible only `OnStartRequest()` and `OnStopRequest()` was called, but no `OnDataAvailable()`. If so, when `OnStopRequest()` is being called, we would have no image but the channel status is a success.
Therefore, before setting the image container, we should also ensure we get the image already.
Differential Revision: https://phabricator.services.mozilla.com/D80744
Currently, `NotificationObserverWrapper` would leak because no one delete it. When clearing the weak pointer in `ImageDecoderListener`, that won't destroy `NotificationObserverWrapper` itself, but only destroy the `WeakReference<NotificationObserverWrapper>`.
Therefore, we should remove `NotificationObserverWrapper` and use a strong reference to hold `imgINotificationObserver` directly.
Differential Revision: https://phabricator.services.mozilla.com/D70569
To be able to remove SystemGroup, NS_ReleaseOnMainThreadSystemGroup
needs to have its dependency on SystemGroup removed. Since all
releases using SystemGroup would've released on the main thread anyway
we can safely replace NS_ReleaseOnMainThreadSystemGroup with
NS_ReleaseOnMainThread.
Depends on D64390
Differential Revision: https://phabricator.services.mozilla.com/D67631
This method allows consumers to decode images from a |nsIChannel| instance.
This method also supports vector images (e.g. SVGs), which other decode methods don't.
Differential Revision: https://phabricator.services.mozilla.com/D49037
This method allows consumers to decode images from a |nsIChannel| instance.
This method also supports vector images (e.g. SVGs), which other decode methods don't.
Differential Revision: https://phabricator.services.mozilla.com/D49037
This method allows consumers to decode images from a |nsIChannel| instance.
This method also supports vector images (e.g. SVGs), which other decode methods don't.
Differential Revision: https://phabricator.services.mozilla.com/D49037
This method allows consumers to decode images from a |nsIChannel| instance.
This method also supports vector images (e.g. SVGs), which other decode methods don't.
Differential Revision: https://phabricator.services.mozilla.com/D49037
Summary: Really sorry for the size of the patch. It's mostly automatic
s/nsIDocument/Document/ but I had to fix up in a bunch of places manually to
add the right namespacing and such.
Overall it's not a very interesting patch I think.
nsDocument.cpp turns into Document.cpp, nsIDocument.h into Document.h and
nsIDocumentInlines.h into DocumentInlines.h.
I also changed a bunch of nsCOMPtr usage to RefPtr, but not all of it.
While fixing up some of the bits I also removed some unneeded OwnerDoc() null
checks and such, but I didn't do anything riskier than that.
If class A is derived from class B, then an instance of class A can be
converted to B via a static cast, so a slower QI is not needed.
Differential Revision: https://phabricator.services.mozilla.com/D6861
This was done automatically replacing:
s/mozilla::Move/std::move/
s/ Move(/ std::move(/
s/(Move(/(std::move(/
Removing the 'using mozilla::Move;' lines.
And then with a few manual fixups, see the bug for the split series..
MozReview-Commit-ID: Jxze3adipUh
We should avoiding creating a DrawTarget to create a new
DataSourceSurface when the original surface produced by
RasterImage::GetFrameAtSize matches our requirements in
imgTools::EncodeScaledImage. We should also be using Skia instead of
Cairo.
This patch also fixes a few error conditions where we would not have
unmapped the surface properly.