Commit Graph
66 Commits
Author SHA1 Message Date
Daniel Holbert a70a6fc1d0 Bug 2038802: Use MakeRefPtr to do allocation for local RefPtr variables, in image/. r=tnikkel
(And remove one unnecessary null-check for 'progressproxy' which is
infallibly-allocated.)

Differential Revision: https://phabricator.services.mozilla.com/D299853
2026-05-12 19:54:00 +00:00
serge-sans-paille f81328e365 Bug 2023519 - Make our codebase modernize-use-equals-default + modernize-use-equals-delete -safe wrt. clang-tidy r=sylvestre,necko-reviewers,media-playback-reviewers,profiler-reviewers,dom-storage-reviewers,layout-reviewers,dom-worker-reviewers,valentin,jesup,padenot,edenchuang,emilio
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
2026-03-22 08:35:47 +00:00
Alexandru Marc 04e5f74151 Revert "Bug 2023519 - Make our codebase modernize-use-equals-default + modernize-use-equals-delete -safe wrt. clang-tidy r=sylvestre,necko-reviewers,media-playback-reviewers,profiler-reviewers,dom-storage-reviewers,layout-reviewers,dom-worker-reviewers,valentin,jesup,padenot,edenchuang,emilio"
This reverts commit a64dec2665.
2026-03-19 17:29:58 +00:00
serge-sans-paille a64dec2665 Bug 2023519 - Make our codebase modernize-use-equals-default + modernize-use-equals-delete -safe wrt. clang-tidy r=sylvestre,necko-reviewers,media-playback-reviewers,profiler-reviewers,dom-storage-reviewers,layout-reviewers,dom-worker-reviewers,valentin,jesup,padenot,edenchuang,emilio
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
2026-03-18 17:25:01 +00:00
Sylvestre Ledru 8f90026828 Bug 2023419 - Remove Emacs/Vim modelines from image/ r=emilio
replaced by .editorconfig
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D287848
2026-03-17 07:58:04 +00:00
Tom Schuster bf5b1f91a7 Bug 1988124 - Add a FetchDecodedImage utility. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D264550
2025-10-06 09:38:02 +00:00
Tom Ritter 7e5eaaabc7 Bug 1980264: Plumb metatadata down to the Image Encoders r=tnikkel
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
2025-10-06 02:12:13 +00:00
Cristina Horotan d749d6e28e Revert "Bug 1980264: Add a test r=timhuang" for causing xpcshell failures on test_encoder_png.js
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.
2025-10-03 19:31:36 +00:00
Tom Ritter 3487904284 Bug 1980264: Plumb metatadata down to the Image Encoders r=tnikkel
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
2025-10-03 18:14:20 +00:00
Sylvestre Ledru a3ea006705 Bug 1519636 - Reformat recent changes to the Google coding style r=emilio,necko-reviewers,geckoview-reviewers,application-update-reviewers,media-playback-reviewers,devtools-reviewers,anti-tracking-reviewers,profiler-reviewers,win-reviewers,migration-reviewers,padenot,mconley,nchevobbe,kershaw,gstoll,mstange,bytesized,m_kato
This new version of clang 17 also slightly changed the formatting.

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D215914
2024-07-17 11:15:31 +00:00
Lee Salzman 7fb7eb174e Bug 1890216 - Fix Skia API usage in Gecko for m125 update. r=aosmond
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
2024-05-15 01:57:52 +00:00
Iulian Moraru 828f580807 Backed out 4 changesets (bug 1890216) for causing multiple new permafailures. CLOSED TREE
Backed out changeset 31ffc16da37b (bug 1890216)
Backed out changeset 9da95cf34386 (bug 1890216)
Backed out changeset 9e684b8096fc (bug 1890216)
Backed out changeset 9014c3f367eb (bug 1890216)
2024-05-10 19:01:50 +03:00
Lee Salzman eab4d212ce Bug 1890216 - Fix Skia API usage in Gecko for m125 update. r=aosmond
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
2024-05-10 03:49:34 +00:00
Nika Layzell 583cee7bac Bug 1778211 - Reject xpidl CDATA containing 'virtual', r=xpcom-reviewers,necko-reviewers,mccr8,dragana
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
2022-07-06 14:53:06 +00:00
ssummar 551c07b308 Bug 1530209 - Removed context argument from various methods. r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D129797
2021-11-24 11:25:41 +00:00
Jan de Mooij 520f45d381 Bug 1674777 part 3 - Change Get*LengthAndData outparam from uint32_t to size_t. r=sfink,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D103275
2021-01-31 08:35:40 +00:00
Andi-Bogdan Postelnicu 144d718b52 Bug 1683557 - Make image buildable outside of unified-build environment. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D100211
2021-01-04 14:20:22 +00:00
Simon Giesecke 46908cfb51 Bug 1660470 - Add missing include directives/forward declarations. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D87865
2020-11-23 16:21:38 +00:00
Simon Giesecke 39124586b5 Bug 1653335 - Replace MakeSpan uses by constructor calls. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D83817
2020-08-07 07:49:47 +00:00
sotaro c1c44bdec0 Bug 1651587 - Make image::Image released efficient on main thread r=aosmond
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
2020-07-10 14:34:01 +00:00
Simon Giesecke a69d79b6db Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
alwu 02bcf6e2a4 Bug 1647070 - part1 : set container only when we have an image and no error occurs. r=aosmond
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
2020-06-26 20:01:57 +00:00
alwu d293a7feec Bug 1628929 - part2 : use a strong reference to hold a imgINotificationObserver. r=agi
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
2020-04-14 18:17:08 +00:00
Andreas Farre c76bc4f1c8 Bug 1620594 - Part 1: Rework NS_ReleaseOnMainThreadSystemGroup. r=nika
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
2020-04-07 15:16:23 +00:00
Simon Giesecke 9bcfd47601 Bug 1611415 - Prefer using std::move over forget. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980
2020-02-13 14:38:48 +00:00
shindli 6bb3487209 Backed out changeset 0c982bc69cb3 (bug 1611415) for causing build bustages in /builds/worker/workspace/build/src/obj-firefox/dist/include/nsCOMPtr CLOSED TREE 2020-02-12 20:13:29 +02:00
Simon Giesecke d45525793f Bug 1611415 - Applied FixItHints from mozilla-non-std-move. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980
2020-02-12 17:24:41 +00:00
Sylvestre Ledru 36a1079e0f Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D58175
2020-01-09 21:50:11 +00:00
Dave Townsend bf973a8b78 Bug 1602051: Failing to pass an observer to imgITools.decodeImageFromChannelAsync crashes. r=snorp
Differential Revision: https://phabricator.services.mozilla.com/D56222
2019-12-09 18:59:20 +00:00
Sylvestre Ledru 0f8c6db00f Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D54686
2019-11-26 14:35:02 +00:00
Agi Sferro 8bd87a09fb Bug 1530402 - Provide imgTools.decodeFromChannelAsync. r=aosmond,snorp
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
2019-11-18 16:48:53 +00:00
Noemi Erli 3b68d28b7e Backed out 13 changesets (bug 1530402, bug 1533156) for causing raptor failures CLOSED TREE
Backed out changeset 6d7b7d22b0c6 (bug 1530402)
Backed out changeset acea32ec5975 (bug 1530402)
Backed out changeset 597e32ad2f5b (bug 1530402)
Backed out changeset 352068fe68bc (bug 1530402)
Backed out changeset e0ae4f16f7ed (bug 1530402)
Backed out changeset 282b033c7daa (bug 1530402)
Backed out changeset 72274a5a821b (bug 1530402)
Backed out changeset 3d3366fe476f (bug 1530402)
Backed out changeset 7400c3fd2b5f (bug 1530402)
Backed out changeset 23d43a425641 (bug 1530402)
Backed out changeset 83b9603f5fa1 (bug 1530402)
Backed out changeset 50c50a80e881 (bug 1533156)
Backed out changeset 5975264fd34b (bug 1530402)
2019-11-15 18:57:20 +02:00
Agi Sferro 50c8756029 Bug 1530402 - Provide imgTools.decodeFromChannelAsync. r=aosmond,snorp
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
2019-11-15 16:33:43 +00:00
Andreea Pavel bd8fca71bd Backed out 13 changesets (bug 1530402, bug 1533156) for failing test_ext_tabs_query.html on a CLOSED TREE
Backed out changeset aa9499a196e3 (bug 1530402)
Backed out changeset ce12e494a189 (bug 1530402)
Backed out changeset 1b053a203af9 (bug 1530402)
Backed out changeset f57bc0ee284b (bug 1530402)
Backed out changeset 701de7bcb484 (bug 1530402)
Backed out changeset ab7b21969769 (bug 1530402)
Backed out changeset c7b8cc91f245 (bug 1530402)
Backed out changeset e2be10dbad5e (bug 1530402)
Backed out changeset f52a8fedcded (bug 1530402)
Backed out changeset 4fcca36d5b3e (bug 1530402)
Backed out changeset 82b28001164b (bug 1530402)
Backed out changeset 1dc6a4ebc9e1 (bug 1533156)
Backed out changeset ae5ead19921d (bug 1530402)
2019-11-15 05:48:23 +02:00
Agi Sferro 19dc1ef6ba Bug 1530402 - Provide imgTools.decodeFromChannelAsync. r=aosmond,snorp
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
2019-11-14 19:08:37 +00:00
Csoregi Natalia 37839f3737 Backed out 13 changesets (bug 1530402, bug 1533156) for multiple failures e.g columnrule-linestyles.html and test_composite.html. CLOSED TREE
Backed out changeset 9e55fee783ff (bug 1530402)
Backed out changeset f6af9d6a5482 (bug 1530402)
Backed out changeset bf09025d6f98 (bug 1530402)
Backed out changeset 9717ba255826 (bug 1530402)
Backed out changeset e34768ee01db (bug 1530402)
Backed out changeset b540d7b34ef6 (bug 1530402)
Backed out changeset 126af041394b (bug 1530402)
Backed out changeset cf16e02e62cd (bug 1530402)
Backed out changeset 3638fcff5bed (bug 1530402)
Backed out changeset 9630bed0ca2c (bug 1530402)
Backed out changeset 1aa5898efa5f (bug 1530402)
Backed out changeset 7462bbe4e676 (bug 1533156)
Backed out changeset 536a4cac3ffe (bug 1530402)
2019-11-14 03:46:37 +02:00
Agi Sferro 83e51fefa0 Bug 1530402 - Provide imgTools.decodeFromChannelAsync. r=aosmond,snorp
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
2019-11-13 20:29:06 +00:00
championshuttler eb965e5541 Bug 1552317 - Fix codespell errors for image/. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D45553
2019-09-12 09:00:52 +00:00
Timothy Nikkel f0759c3d32 Bug 1578164. Use async notifications when requesting decode of an image in most places. r=aosmond
Most of things will likely be no real change because they ask for the exact frame they want immediately before.

Differential Revision: https://phabricator.services.mozilla.com/D44359
2019-09-03 15:36:23 +00:00
Jeff Walden 49690de13d Bug 1532005 - Implement a new js/public/ArrayBuffer.h header to centralize functionality for creating and interacting with ArrayBuffers. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D21827
2019-03-04 15:19:16 -08:00
Razvan Maries 89f21d9009 Backed out 4 changesets (bug 1532005, bug 1531638) for causing perma fails and Spidermonkey fail. CLOSED TREE
Backed out changeset 4913d941de92 (bug 1532005)
Backed out changeset 9635abe5bf24 (bug 1532005)
Backed out changeset 738cf4b1126a (bug 1532005)
Backed out changeset e5d9f2ee7ac7 (bug 1531638)
2019-03-05 01:07:28 +02:00
Jeff Walden 2160433e58 Bug 1532005 - Implement a new js/public/ArrayBuffer.h header to centralize functionality for creating and interacting with ArrayBuffers. r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D21827
2019-02-28 17:00:56 -08:00
Alex Gaynor 080a157351 Bug 1415508 - use Span in constructing a byte input stream; r=mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D20687
2019-02-25 19:11:20 +00:00
Emilio Cobos Álvarez dc336a73ba Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug
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.
2019-01-03 17:48:33 +01:00
Sylvestre Ledru e5a134f73a Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset
2018-11-30 11:46:48 +01:00
Andrew McCreight 05b70f0bb6 Bug 1493737 - Fix many trivial calls to do_QueryInterface r=smaug
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
2018-10-01 21:38:01 +00:00
Andrew Osmond bd4bc40351 Bug 920630 - Part 1. Improve image logging to support direct logging of URIs and images objects. r=tnikkel 2018-06-05 20:42:56 -04:00
Emilio Cobos Álvarez 4b8b5e1717 Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
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
2018-06-01 10:45:27 +02:00
Andrew Osmond 892c525966 Bug 1462650 - Improve imgTools::EncodeScaledImage performance. r=lsalzman
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.
2018-05-25 09:02:20 -04:00
Adrian Wielgosik 64ffaba060 Bug 1460940 - Remove nsIDOMDocument uses in image/. r=bz
MozReview-Commit-ID: HUiegmeFLo4
2018-05-11 19:46:15 +02:00