Commit Graph
78 Commits
Author SHA1 Message Date
Emilio Cobos Álvarez 5016086e1a Bug 2025089 - Remove some includes from nsINode.h and Element.h. r=dom-core,dom-storage-reviewers,firefox-svg-reviewers,janv,smaug
Differential Revision: https://phabricator.services.mozilla.com/D289049
2026-03-22 23:45:55 +00:00
Sylvestre Ledru 9eb1a31a98 Bug 2023419 - Remove Emacs/Vim modelines from dom/ r=emilio,media-playback-reviewers,webidl,padenot
replaced by .editorconfig
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D287843
2026-03-16 21:02:32 +00:00
Emilio Cobos Álvarez 791917d8af Bug 1976665 - Sort headers in dom/. r=dom-core,media-playback-reviewers,webrtc-reviewers,dom-storage-reviewers,padenot,janv,smaug,jesup,jib
Most changes are automated. Relevant bit is dom/.clang-format. I had to
manually disable clang-format in a few places where importing external
files and so on that aren't self-contained, and fix a couple includes /
forward declarations.

Differential Revision: https://phabricator.services.mozilla.com/D256800
2025-08-05 11:47:34 +00:00
Kagami Sascha Rosylight ee4d846761 Bug 1941210 - Strongly grab FetchStreamReader while waiting for writing r=smaug
Nothing strongly grabs ReadableStream nor FetchStreamReader while waiting for nsIAsyncOutputStream to respond. mAsyncWaitReader should now strongly grab the reader until the output stream responds.

Differential Revision: https://phabricator.services.mozilla.com/D234031
2025-01-14 19:24:05 +00:00
Kagami Sascha Rosylight 6447a11979 Bug 1939295 - Add OutputStreamHolder r=jesup
Similar to InputStreamHolder, this adds OutputStreamHolder to FetchStreamReader:

1. OutputStreamHolder is not part of the cycle collection but is freed when FetchStreamReader goes away
2. nsIAsyncOutputStream holds OutputStreamHolder which only weakly hold FetchStreamReader, allowing FetchStreamReader to be cycle collected.
3. GlobalTeardownObserver is not added here as we only accept JS ReadableStream here instead of nsIInputStream, which is part of the cycle collection unlike nsIInputStream.

Differential Revision: https://phabricator.services.mozilla.com/D233553
2025-01-09 15:20:35 +00:00
Kagami Sascha Rosylight 7eafaaa2cf Bug 1866078 - Add InputToReadableStreamAlgorithms::MaybeGetInputStreamIfUnread r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D194186
2023-11-27 14:34:00 +00:00
Kagami Sascha Rosylight f45f3daa00 Bug 1865640 - Part 2: Grab StrongWorkerRef in StartConsuming instead of Create r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D194090
2023-11-23 11:34:25 +00:00
Kagami Sascha Rosylight cefcb6d8bb Bug 1865640 - Part 1: Drop SCRIPT_HOLDER from FetchStreamReader r=smaug
It's not holding any JS objects anymore, probably since the migration to DOM streams.

Differential Revision: https://phabricator.services.mozilla.com/D194089
2023-11-23 11:34:25 +00:00
Emilio Cobos Álvarez d02e297b2d Bug 1624819 - Remove TaskCategory and other quantum dom remnants. r=smaug,media-playback-reviewers,credential-management-reviewers,cookie-reviewers,places-reviewers,win-reviewers,valentin,mhowell,sgalich,alwu
Sorry this is not a particularly easy patch to review. But it should be
mostly straight-forward.

I kept Document::Dispatch mostly for convenience, but could be
cleaned-up too / changed by SchedulerGroup::Dispatch. Similarly maybe
that can just be NS_DispatchToMainThread if we add an NS_IsMainThread
check there or something (to preserve shutdown semantics).

Differential Revision: https://phabricator.services.mozilla.com/D190450
2023-10-10 08:51:12 +00:00
Peter Van der Beken 2ba4663c86 Bug 1690111 - Use new TypedArray APIs for appending data to a container. r=farre,extension-reviewers,media-playback-reviewers,kmag,alwu,padenot
Depends on D152494

Differential Revision: https://phabricator.services.mozilla.com/D152495
2023-09-20 09:42:01 +00:00
Cosmin Sabou c3effd7450 Backed out 13 changesets (bug 1690111) for causing fetch related crashes.
Backed out changeset 5f2c25d194ad (bug 1690111)
Backed out changeset 76c408bcd053 (bug 1690111)
Backed out changeset 6d0649fdafff (bug 1690111)
Backed out changeset c1330b5e8c43 (bug 1690111)
Backed out changeset 5fa36d8fd2a5 (bug 1690111)
Backed out changeset daf7d747853a (bug 1690111)
Backed out changeset f70e09a7f5c6 (bug 1690111)
Backed out changeset 40c6d6eed7f8 (bug 1690111)
Backed out changeset 692f2a759573 (bug 1690111)
Backed out changeset 7140866dd9f6 (bug 1690111)
Backed out changeset 2865fe682139 (bug 1690111)
Backed out changeset 9dcd2416f8a5 (bug 1690111)
Backed out changeset 9c411bf84079 (bug 1690111)
2023-09-11 17:55:24 +03:00
Peter Van der Beken e953841f74 Bug 1690111 - Use new TypedArray APIs for appending data to a container. r=farre,extension-reviewers,media-playback-reviewers,kmag,alwu,padenot
Depends on D152494

Differential Revision: https://phabricator.services.mozilla.com/D152495
2023-09-11 12:52:20 +00:00
Jens Stutte 7475832036 Bug 1833790 - Ignore StrongWorkerRef callback if mWorkerRef is already cleared. r=dom-worker-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D180072
2023-06-06 16:02:52 +00:00
Kagami Sascha Rosylight 2229973496 Bug 1832326 - Part 2: Remove FetchBody::mReadableStreamReader r=smaug
FetchBody does nothing with the strong reference. Both ReadableStream and FetchStreamReader have their strong references and corresponding cycle collection, so this one can go away.

Depends on D177904

Differential Revision: https://phabricator.services.mozilla.com/D178098
2023-05-16 00:08:01 +00:00
Kagami Sascha Rosylight 14b3486c79 Bug 1823429 - Don't try another read from ChunkSteps r=smaug
Having another read request on an empty chunk sounds nice, but I guess it's not worth allowing recursion for this edge case.

Now the next read request will happen asynchronously by the next OnOutputStreamReady callback, which is similar to what Blink does and the spec recommends.

* Blink: https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/fetch/readable_stream_bytes_consumer.cc;l=179-186;drc=059796845b1738dbf28ea76f0e9ff4b6f8787d3a (queues a microtask to prevent recursion)
* Spec: https://streams.spec.whatwg.org/#readablestreamdefaultreader-read-all-bytes (See the note below "chunk steps")

Differential Revision: https://phabricator.services.mozilla.com/D173813
2023-04-04 13:35:01 +00:00
Nika Layzell 2336150404 Bug 1538754 - Consistently watch the nsIAsyncOutputStream for closure, r=asuth,saschanaz
Before these changes, there were a number of cases where it would be
possible for the pipe to be closed or otherwise encounter an error, and
for there to be a very large or potentially indefinite delay before that
error is reported to the ReadableStream.

This patch avoids changing too much of the structure of the existing
FetchStreamReader's design, while avoiding the potential pitfalls, and
ensuring that the stream is being consistently watched.

A more polished patch in the future may be able to perform a more
efficient and direct adaptation from a `ReadableStream` or
`WritableStream` to the `nsIAsyncInputStream` and `nsIAsyncOutputStream`
types, but that was not tackled here.

Differential Revision: https://phabricator.services.mozilla.com/D168481
2023-03-30 15:14:00 +00:00
Kagami Sascha Rosylight 6054f3391e Bug 1810759 - Replace ReadableStream internal algorithm uses in Fetch r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D167370
2023-01-24 14:52:03 +00:00
Daniel Holbert b9fb45ee7a Bug 1800342: Make NS_NewPipe2 and NS_NewPipe infallible, to reflect reality. r=xpcom-reviewers,necko-reviewers,nika,kershaw
This patch doesn't change behavior; these APIs were already effectively
infallible, in the sense that it was impossible for them to return anything
other than NS_OK.

The actual API changes here are in xpcom/io/nsIPipe.idl and
xpcom/io/nsPipe3.cpp, and the rest of this patch is just updates to callsites,
removing code that handled failure-flavored return values from these functions.
(All of this removed code was already dead code, effectively.)

Differential Revision: https://phabricator.services.mozilla.com/D161947
2022-11-14 23:22:16 +00:00
Matthew Gaudet 36b1550bec Bug 1773237 - Mark ignored promise as handled to avoid spurious unhandled rejection error r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D158589
2022-10-24 19:53:15 +00:00
Matthew Gaudet 64d99f7a70 Bug 1795914 - Remove JS Streams implementation r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D159610
2022-10-24 16:05:58 +00:00
Norisz Fay f20f4b9b72 Backed out changeset 26304e65203f (bug 1773237) for causing wpt failures on response-error-from-stream.any.sharedworker.html CLOSED TREE 2022-10-07 16:06:49 +03:00
Matthew Gaudet ead54c18cd Bug 1773237 - Mark ignored promise as handled to avoid spurious unhandled rejection error r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D158589
2022-10-07 02:58:13 +00:00
Marian-Vasile Laza 6e84b31e91 Backed out changeset c6cf679e8f08 (bug 1773237) for causing bc failures on Promise-inl.h. CLOSED TREE 2022-10-06 21:34:22 +03:00
Matthew Gaudet 9cf3d82c8c Bug 1773237 - Mark ignored promise as handled to avoid spurious unhandled rejection error r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D158589
2022-10-06 17:25:14 +00:00
Andrew Sutherland d528d2281e Bug 1770630 - Worker stream readers should contribute to busy count. r=dom-worker-reviewers,jstutte
Differential Revision: https://phabricator.services.mozilla.com/D149185
2022-08-03 00:36:01 +00:00
criss 1a0ccba79a Backed out changeset cc893e08aa2f (bug 1770630) for causing wpt failures on FileReader-multiple-reads.any.worker.html. CLOSED TREE 2022-08-03 01:56:06 +03:00
Andrew Sutherland 7c4e16db03 Bug 1770630 - Worker stream readers should contribute to busy count. r=dom-worker-reviewers,jstutte
Differential Revision: https://phabricator.services.mozilla.com/D149185
2022-08-02 20:56:53 +00:00
Tom Schuster 1f263720b5 Bug 1773242 - Add better error message when consuming non-Uint8Array. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D148633
2022-06-14 07:42:29 +00:00
Matthew Gaudet ad845e0b67 Bug 1757241 - Remove !MOZ_DOM_STREAMS code from most files r=smaug
I've also tested to verify that JS Streams remains enabled in the JS Shell package

Differential Revision: https://phabricator.services.mozilla.com/D142620
2022-04-13 18:57:48 +00:00
Tom Schuster 64985daaf7 Bug 1760419 - Try to paper over nullptr.
Differential Revision: https://phabricator.services.mozilla.com/D141553
2022-03-19 17:50:08 +00:00
Tom Schuster 5b7586b636 Bug 1750298 - Use custom ReadRequest for FetchStreamReader. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D137681
2022-03-18 17:46:32 +00:00
Bryan Thrall d64b59843d Bug 1734174 - Remove unneeded JSContext parameter from AcquireReadableStreamDefaultReader() r=mgaudet
Depends on D139871

Differential Revision: https://phabricator.services.mozilla.com/D139872
2022-02-28 22:31:41 +00:00
Matthew Gaudet 572f0768fd Bug 1754913 - Intentionally ignore errors in FetchStreamReader::OnOutputStreamReader r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D138703
2022-02-16 20:52:12 +00:00
Matthew Gaudet bf5de24a4f Bug 1751917 - Indicate JS Exception handling to ErrorResult in FetchStreamReader r=saschanaz
Differential Revision: https://phabricator.services.mozilla.com/D136913
2022-01-25 21:29:18 +00:00
Matthew Gaudet 108063d593 Bug 1748888 - Add ErrorResult parameter to PromiseNativeHandler callbacks r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D136423
2022-01-20 19:11:39 +00:00
Matthew Gaudet 9e76758612 Bug 1750606 - Use script boundaries to make DOM streams buildable r=saschanaz
This gets us back to the state we were in with JS Streams. There's a fair
amount of work to get this annotation correct, and some tricky cases to
handle.

Differential Revision: https://phabricator.services.mozilla.com/D136178
2022-01-18 14:39:45 +00:00
Matthew Gaudet 7cf26082b1 Bug 1734873 - Fetch/Response/Blob ReadableStream integration r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D131550
2022-01-14 21:09:20 +00:00
Olli Pettay d201b6a86d Bug 1749188, clear JS member variable during unlink, r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D135498
2022-01-10 22:35:15 +00:00
Jens Stutte 0780512aa4 Bug 1650940: Only assert FetchStreamReader members in OnOutputStreamReady if we are not closed. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D134297
2021-12-20 18:10:09 +00:00
Simon Giesecke 2969e54562 Bug 1676361 - Move AutoEntryScript to a separate header file to avoid pulling in GeckoProfiler.h everywhere. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D97742
2021-03-05 15:29:49 +00:00
Alexandru Michis 80cf7cc919 Backed out changeset c6b72f3c76ba (bug 1676361) for causing bustages in nsSocketTransportService2.cpp
CLOSED TREE
2021-03-04 23:26:04 +02:00
Simon Giesecke b68ba311a2 Bug 1676361 - Move AutoEntryScript to a separate header file to avoid pulling in GeckoProfiler.h everywhere. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D97742
2021-03-04 17:30:48 +00:00
Noemi Erli c351c837d1 Backed out changeset 06452c4c828c (bug 1676361) for causing bustages CLOSED TREE 2021-03-04 19:13:56 +02:00
Simon Giesecke e46fd72f6f Bug 1676361 - Move AutoEntryScript to a separate header file to avoid pulling in GeckoProfiler.h everywhere. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D97742
2021-03-04 16:14:44 +00:00
smolnar 4a344e2a83 Backed out changeset 9062e17fe15c (bug 1676361) on devs request. CLOSED TREE 2021-03-04 16:51:21 +02:00
Simon Giesecke fa4029ad0a Bug 1676361 - Move AutoEntryScript to a separate header file to avoid pulling in GeckoProfiler.h everywhere. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D97742
2021-03-04 14:32:15 +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
Sylvestre Ledru 68b806d604 Bug 1674637 - Use nested namespaces in dom/ r=sg,andi
Also add some missing namespace qualifications

Done with:
./mach static-analysis check --checks="-*,modernize-concat-nested-namespaces" --fix dom/
./mach clang-format -p $(hg status dom/|grep ^M|awk '{print $2}')

Differential Revision: https://phabricator.services.mozilla.com/D95456
2020-11-04 17:04:01 +00:00
Butkovits Atila a6e7dcc53f Backed out changeset c0adbf7522dc (bug 1674637) for bustage on GMPParent.cpp. CLOSED TREE 2020-11-04 10:54:36 +02:00
Sylvestre Ledru 8f709b39e8 Bug 1674637 - Use nested namespaces in dom/ r=sg,andi
Also add some missing namespace qualifications

Done with:
./mach static-analysis check --checks="-*,modernize-concat-nested-namespaces" --fix dom/
./mach clang-format -p $(hg status dom/|grep ^M|awk '{print $2}')

Differential Revision: https://phabricator.services.mozilla.com/D95456
2020-11-04 08:29:00 +00:00