Граф коммитов

866 Коммитов

Автор SHA1 Сообщение Дата
ssengupta 981a0e4d28 Bug 1637742 - P2 - IPCBlobInputStream does not return error and executes callback on AsyncWait/AsyncLengthWait if stream is closed r=baku
Depends on D77407

Differential Revision: https://phabricator.services.mozilla.com/D77408
2020-06-02 13:21:16 +00:00
Perry Jiang 2c1b60619c Bug 1622451 - minimize stream copying across IPC boundaries r=asuth,baku
Initially, IPCInternal{Request,Response} had contained IPCStreams which would
result in unecessary copying when sending the objects over IPC. The patch
makes these streams either:

1) ParentToParentStream (just a UUID)
2) ParentToChildStream (a PIPCBlobInputStream actor, acting as a handle)
3) ChildToParentStream (a real IPCStream)

These three types are union-ed together by the BodyStreamVariant IPDL structure.
This structure replaces the IPCStream members in IPCInternal{Request,Response}
so that, depending on the particular IPDL protocol, we can avoid cloning streams
and just pass handles/IDs instead.

As a side effect, this makes file-backed Response objects cloneable. Initially,
these Responses would be backed by an nsFileInputStream, which is not cloneable
outside the parent process. They are now backed by IPCBlobInputStreams, which
are cloneable.

One thing that's not really satisfactory (IMO), is the manual management of
IPCBlobInputStreamStorage so that no streams are leaked, e.g. if we store a
stream in the IPCBlobInputStreamStorage but fail to send an IPC message and
therefore fail to remove the stream from storage on the other side of the IPC
boundary (only parent-to-parent in this case).

Differential Revision: https://phabricator.services.mozilla.com/D73173
2020-05-29 09:09:54 +00:00
Brindusan Cristian 323d794df6 Backed out 1 changesets (bug 1622451) for assertion failures on UniquePtr.h. CLOSED TREE
Backed out changeset fb8e753340e4 (bug 1622451)
2020-05-28 23:31:26 +03:00
Perry Jiang 8d7bde9382 Bug 1622451 - minimize stream copying across IPC boundaries r=asuth,baku
Initially, IPCInternal{Request,Response} had contained IPCStreams which would
result in unecessary copying when sending the objects over IPC. The patch
makes these streams either:

1) ParentToParentStream (just a UUID)
2) ParentToChildStream (a PIPCBlobInputStream actor, acting as a handle)
3) ChildToParentStream (a real IPCStream)

These three types are union-ed together by the BodyStreamVariant IPDL structure.
This structure replaces the IPCStream members in IPCInternal{Request,Response}
so that, depending on the particular IPDL protocol, we can avoid cloning streams
and just pass handles/IDs instead.

As a side effect, this makes file-backed Response objects cloneable. Initially,
these Responses would be backed by an nsFileInputStream, which is not cloneable
outside the parent process. They are now backed by IPCBlobInputStreams, which
are cloneable.

One thing that's not really satisfactory (IMO), is the manual management of
IPCBlobInputStreamStorage so that no streams are leaked, e.g. if we store a
stream in the IPCBlobInputStreamStorage but fail to send an IPC message and
therefore fail to remove the stream from storage on the other side of the IPC
boundary (only parent-to-parent in this case).

Differential Revision: https://phabricator.services.mozilla.com/D73173
2020-05-28 15:15:43 +00:00
owlishDeveloper 887def6ff1 Bug 1432949 - Allow system principal initialize a channel for revoked blob URLs r=geckoview-reviewers,snorp,baku,ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D75659
2020-05-20 14:39:28 +00:00
Csoregi Natalia 83cd8858fc Backed out changeset e1be97ce43d1 (bug 1622451) for failures on browser_download_canceled.js. CLOSED TREE 2020-05-01 03:58:25 +03:00
Perry Jiang 1ad4e039d4 Bug 1622451 - minimize stream copying across IPC boundaries r=asuth,baku
Initially, IPCInternal{Request,Response} had contained IPCStreams which would
result in unecessary copying when sending the objects over IPC. The patch
makes these streams either:

1) ParentToParentStream (just a UUID)
2) ParentToChildStream (a PIPCBlobInputStream actor, acting as a handle)
3) ChildToParentStream (a real IPCStream)

These three types are union-ed together by the BodyStreamVariant IPDL structure.
This structure replaces the IPCStream members in IPCInternal{Request,Response}
so that, depending on the particular IPDL protocol, we can avoid cloning streams
and just pass handles/IDs instead.

As a side effect, this makes file-backed Response objects cloneable. Initially,
these Responses would be backed by an nsFileInputStream, which is not cloneable
outside the parent process. They are now backed by IPCBlobInputStreams, which
are cloneable.

One thing that's not really satisfactory (IMO), is the manual management of
IPCBlobInputStreamStorage so that no streams are leaked, e.g. if we store a
stream in the IPCBlobInputStreamStorage but fail to send an IPC message and
therefore fail to remove the stream from storage on the other side of the IPC
boundary (only parent-to-parent in this case).

Differential Revision: https://phabricator.services.mozilla.com/D73173
2020-04-30 23:52:54 +00:00
Andrea Marchesini 25c14a3dbc Bug 1633731 - Avoid cloning IPCBlobInputStream objects when not needed, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D72853
2020-04-28 13:32:22 +00:00
Matt Woodrow 20f213591b Bug 1624318 - Serialize replacement config input stream as a blob. r=baku,necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D71872
2020-04-27 04:49:00 +00:00
Kris Maglione 4c89b71494 Bug 1614462: Part 2d - Fix tests that don't need to use mozbrowser. r=mccr8
These tests used <iframe mozbrowser> for convenience, mostly forcing
themselves to only run in non-e10s mode in the process, but none of them
really have any need to.

Differential Revision: https://phabricator.services.mozilla.com/D70745
2020-04-20 22:31:29 +00:00
Ciure Andrei a5ac2a8bbc Backed out 10 changesets (bug 1614462) for causing test_ipc_messagemanager_blob.js failures CLOSED TREE
Backed out changeset bf4f8253c708 (bug 1614462)
Backed out changeset c61b797d63e9 (bug 1614462)
Backed out changeset 284002de7137 (bug 1614462)
Backed out changeset 7f604ee5731c (bug 1614462)
Backed out changeset a73ef8167cd4 (bug 1614462)
Backed out changeset ecc3477ed34e (bug 1614462)
Backed out changeset 2106f3ccc4b5 (bug 1614462)
Backed out changeset e68c38a7741d (bug 1614462)
Backed out changeset 93b3bacdbb34 (bug 1614462)
Backed out changeset 0cf4898ae08d (bug 1614462)
2020-04-21 01:11:37 +03:00
Kris Maglione d1639bbfcd Bug 1614462: Part 2d - Fix tests that don't need to use mozbrowser. r=mccr8
These tests used <iframe mozbrowser> for convenience, mostly forcing
themselves to only run in non-e10s mode in the process, but none of them
really have any need to.

Differential Revision: https://phabricator.services.mozilla.com/D70745
2020-04-20 20:11:43 +00:00
Ciure Andrei c15dcac93b Backed out 10 changesets (bug 1614462) for causing xpcshell failures CLOSED TREE
Backed out changeset 34d4a86530b4 (bug 1614462)
Backed out changeset dbc2e2556d08 (bug 1614462)
Backed out changeset 512bbab4730c (bug 1614462)
Backed out changeset cd6b8d630f4c (bug 1614462)
Backed out changeset e4ad5037658f (bug 1614462)
Backed out changeset 0ffed1dc4296 (bug 1614462)
Backed out changeset 90ed81cbfe34 (bug 1614462)
Backed out changeset 6d2137eb1d52 (bug 1614462)
Backed out changeset b4819c99e16e (bug 1614462)
Backed out changeset b7deaed376ed (bug 1614462)
2020-04-17 02:26:14 +03:00
Kris Maglione c45d02801c Bug 1614462: Part 2d - Fix tests that don't need to use mozbrowser. r=mccr8
These tests used <iframe mozbrowser> for convenience, mostly forcing
themselves to only run in non-e10s mode in the process, but none of them
really have any need to.

Differential Revision: https://phabricator.services.mozilla.com/D70745
2020-04-16 16:57:14 +00:00
Tom Tung 3d9adc5e80 Bug 1586761 - P4 - Use new methods in dom/file and dom/events; r=baku
For the usecases in dom/file, I'm not so sure how to get the global at
callsites, so I let aIsSystemPrincipal and aCrossOriginIsolated to be false for
now.

Differential Revision: https://phabricator.services.mozilla.com/D63905

--HG--
extra : moz-landing-system : lando
2020-03-25 14:14:37 +00:00
Andreas Farre 9e36af2ab6 Bug 1620594 - Part 3: Use default target for timers using SystemGroup. r=nika
Depends on D67632

Differential Revision: https://phabricator.services.mozilla.com/D67633

--HG--
extra : moz-landing-system : lando
2020-04-07 15:16:46 +00:00
Andreas Farre 36eaf82163 Bug 1620594 - Part 2: Use SchedulerGroup::Dispatch instead of SystemGroup::Dispatch. r=nika
Depends on D67631

Differential Revision: https://phabricator.services.mozilla.com/D67632

--HG--
extra : moz-landing-system : lando
2020-04-07 15:16:33 +00:00
Emilio Cobos Álvarez 4b9fdf3d73 Bug 1627707 - Rename LoadInfo::LoadingPrincipal to GetLoadingPrincipal as it can return null. r=ckerschb
Mostly a matter of:

  rg -l '\->LoadingPrincipal' | xargs sed -i 's/->LoadingPrincipal/->GetLoadingPrincipal/g'

And then clang-format. But I tweaked manually nsHttpChannelAuthProvider (move
the variable where it's used, don't take a useless strong ref),
AddonContentPolicy (move the declaration of the variable to the if condition),
and BackgroundUtils (same).

Differential Revision: https://phabricator.services.mozilla.com/D69828

--HG--
extra : moz-landing-system : lando
2020-04-06 18:57:36 +00:00
Cosmin Sabou d557e2ed22 Backed out 3 changesets (bug 1627707) for build bustages @ mozilla::net::LoadInfo.
Backed out changeset 65d6a90651ce (bug 1627707)
Backed out changeset 378ec30d9979 (bug 1627707)
Backed out changeset 058a19e11b06 (bug 1627707)
2020-04-06 20:07:04 +03:00
Emilio Cobos Álvarez 97872f2fee Bug 1627707 - Rename LoadInfo::LoadingPrincipal to GetLoadingPrincipal as it can return null. r=ckerschb
Mostly a matter of:

  rg -l '\->LoadingPrincipal' | xargs sed -i 's/->LoadingPrincipal/->GetLoadingPrincipal/g'

And then clang-format. But I tweaked manually nsHttpChannelAuthProvider (move
the variable where it's used, don't take a useless strong ref),
AddonContentPolicy (move the declaration of the variable to the if condition),
and BackgroundUtils (same).

Differential Revision: https://phabricator.services.mozilla.com/D69828

--HG--
extra : moz-landing-system : lando
2020-04-06 16:00:43 +00:00
Sebastian Streich 70f27eb5e3 Bug 1622042 - Remove nsContentUtils::GetAsciiOrigin r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D66634

--HG--
extra : moz-landing-system : lando
2020-03-26 13:20:35 +00:00
Subhamoy Sengupta 559d2b59e6 Bug 1624588 - dom/file/ipc sources now also build when not unified r=baku
Differential Revision: https://phabricator.services.mozilla.com/D68142

--HG--
extra : moz-landing-system : lando
2020-03-25 15:28:37 +00:00
Mihai Alexandru Michis b12b39cb9b Backed out changeset 34504844db03 (bug 1624588) for causing bustages in IPCBlobInputStreamParent.cpp
CLOSED TREE
2020-03-25 14:55:09 +02:00
Subhamoy Sengupta 8f9e4e8061 Bug 1624588 - dom/file/ipc sources now also build when not unified r=baku
Missing includes, namespace-related issues, and missing template instantiations added to make sources compile without unifying.

Differential Revision: https://phabricator.services.mozilla.com/D68142

--HG--
extra : moz-landing-system : lando
2020-03-25 12:45:59 +00:00
Stefan Hindli 91f4c18048 Backed out 4 changesets (bug 1622042) for causing AddonInstallException: Could not install add-on: c:\users\task_1584560140\appdata\local\temp\tmpbg9_h7.zip: ERROR_FILE_ACCESS: There was an error accessing the filesystem. CLOSED TREE
Backed out changeset 929043330599 (bug 1622042)
Backed out changeset b08cdd075e20 (bug 1622042)
Backed out changeset ca87f1c6b90b (bug 1622042)
Backed out changeset 27dbbb7cd590 (bug 1622042)
2020-03-18 22:49:23 +02:00
Sebastian Streich 9cc7686ece Bug 1622042 - Remove nsContentUtils::GetAsciiOrigin r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D66634

--HG--
extra : moz-landing-system : lando
2020-03-18 16:00:53 +00:00
Andrea Marchesini b628d5a112 Bug 1623083 - No recursion in FileReaderSync::SyncRead, r=sg
Differential Revision: https://phabricator.services.mozilla.com/D67169

--HG--
extra : moz-landing-system : lando
2020-03-18 09:46:38 +00:00
Cosmin Sabou 029804e3f7 Backed out 4 changesets (bug 1622042) for causing build bustages on nsContentUtils.cpp. CLOSED TREE
Backed out changeset dc7af5abb8de (bug 1622042)
Backed out changeset 16e3b4a1fefc (bug 1622042)
Backed out changeset f60b16588dad (bug 1622042)
Backed out changeset 4193aea26e28 (bug 1622042)

--HG--
extra : amend_source : 2f2befe5703f683ccaac6d634fc4a262db9fff86
2020-03-17 20:38:35 +02:00
Sebastian Streich 6deb42e865 Bug 1622042 - Remove nsContentUtils::GetAsciiOrigin r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D66634

--HG--
extra : moz-landing-system : lando
2020-03-17 17:11:52 +00:00
Ed Lee acb960676c Bug 1620556 - Automatic code fixes for Prettier 1.19.1 upgrade. r=Standard8,remote-protocol-reviewers,marionette-reviewers,webcompat-reviewers,perftest-reviewers,sparky,whimboo,denschub
Differential Revision: https://phabricator.services.mozilla.com/D66128

--HG--
extra : moz-landing-system : lando
2020-03-13 23:38:52 +00:00
Mark Banner 15cfe23b88 Bug 1620542 - Automatically fix ESLint errors in .eslintrc.js files. r=mossop
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D65703

--HG--
extra : moz-landing-system : lando
2020-03-07 10:09:44 +00:00
Andrea Marchesini 283207a2d3 Bug 1620010 - Clean up BlobImplType string propagation, r=ssengupta
Differential Revision: https://phabricator.services.mozilla.com/D65359

--HG--
extra : moz-landing-system : lando
2020-03-06 12:08:48 +00:00
Andrea Marchesini 8ee171e01e Bug 1619518 - part 4 - FileBlobImpl inherits BlobImpl directly, r=ssengupta,smaug
Differential Revision: https://phabricator.services.mozilla.com/D65166

--HG--
extra : moz-landing-system : lando
2020-03-05 05:48:58 +00:00
Andrea Marchesini da085a7500 Bug 1619518 - part 3 - Better File.length attribute handling, r=ssengupta,smaug
Differential Revision: https://phabricator.services.mozilla.com/D65165

--HG--
extra : moz-landing-system : lando
2020-03-04 23:10:17 +00:00
Andrea Marchesini 4710c7f372 Bug 1619518 - part 2 - Better File.lastModified attribute handling, r=ssengupta,ttung,dom-workers-and-storage-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D65074

--HG--
extra : moz-landing-system : lando
2020-03-04 23:10:22 +00:00
Andrea Marchesini c5d87c49c6 Bug 1619518 - part 1 - Remove a EmptyBlobImpl CTOR, r=ssengupta
Differential Revision: https://phabricator.services.mozilla.com/D65163

--HG--
extra : moz-landing-system : lando
2020-03-04 23:10:19 +00:00
Brindusan Cristian e05aaf88c7 Backed out 4 changesets (bug 1619518) for mochitest failures at test_temporaryFileBlob.html. CLOSED TREE
Backed out changeset f848fd145194 (bug 1619518)
Backed out changeset eb4b8aa164e8 (bug 1619518)
Backed out changeset 403e9b8e2040 (bug 1619518)
Backed out changeset aa25ea873fa9 (bug 1619518)
2020-03-05 01:04:18 +02:00
Andrea Marchesini 64ed039230 Bug 1619518 - part 4 - FileBlobImpl inherits BlobImpl directly, r=ssengupta,smaug
Differential Revision: https://phabricator.services.mozilla.com/D65166

--HG--
extra : moz-landing-system : lando
2020-03-04 21:27:43 +00:00
Andrea Marchesini 8d8aabb99b Bug 1619518 - part 3 - Better File.length attribute handling, r=ssengupta,smaug
Differential Revision: https://phabricator.services.mozilla.com/D65165

--HG--
extra : moz-landing-system : lando
2020-03-04 21:26:21 +00:00
Andrea Marchesini 128c695eba Bug 1619518 - part 2 - Better File.lastModified attribute handling, r=ssengupta,ttung,dom-workers-and-storage-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D65074

--HG--
extra : moz-landing-system : lando
2020-03-04 21:26:03 +00:00
Andrea Marchesini 2298cef351 Bug 1619518 - part 1 - Remove a EmptyBlobImpl CTOR, r=ssengupta
Differential Revision: https://phabricator.services.mozilla.com/D65163

--HG--
extra : moz-landing-system : lando
2020-03-04 21:25:46 +00:00
Subhamoy Sengupta b94fdf1c30 Bug 1485319 - P1 - Call to nsTSubstring::GetMutableData removed r=baku
Differential Revision: https://phabricator.services.mozilla.com/D65133

--HG--
extra : moz-landing-system : lando
2020-03-03 21:02:19 +00:00
Boris Zbarsky 9eac89a8fe Bug 1618744. Use the correct name for the 'EndingType' enum. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D64702

--HG--
extra : moz-landing-system : lando
2020-02-28 08:23:01 +00:00
Kris Maglione c31aa68fb4 Bug 1535617: Part 2 - Clear weak references for most cycle collected objects on unlink. r=mccr8
This covers most cycle collected objects which support weak references, but
not the ones which inherit from a cycle collected class and don't do any cycle
collection on their own.

Differential Revision: https://phabricator.services.mozilla.com/D63962

--HG--
extra : moz-landing-system : lando
2020-02-25 19:44:39 +00:00
Tom Schuster 2f52c3fd94 Bug 1615897 - Blob URL should not ignore query parameter and revokeObjectURL additionally should not ignore fragments. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D63939

--HG--
extra : moz-landing-system : lando
2020-02-25 07:56:07 +00:00
Simon Giesecke 85d97a2e9d Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/file. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D63166

--HG--
extra : moz-landing-system : lando
2020-02-20 16:11:24 +00:00
Jed Davis ee171b6406 Bug 1615155 - Don't generate default `Recv__delete__` if there are args. r=nika
The default method implementations cause problems when trying to
override them with different types in a direct call class.

For the `Recv__delete__` case there's a simple solution: omit it if
there are any arguments, because it doesn't make much sense to specify
arguments and then completely ignore them, and the no-arg case isn't a
problem for overriding.

Differential Revision: https://phabricator.services.mozilla.com/D62977

--HG--
extra : moz-landing-system : lando
2020-02-18 20:46:21 +00:00
Simon Giesecke b50347f917 Bug 1611415 - Prefer using std::move over forget. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-13 14:38:48 +00:00
shindli 91aa0518dd 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 f604a47fa5 Bug 1611415 - Applied FixItHints from mozilla-non-std-move. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980

--HG--
extra : moz-landing-system : lando
2020-02-12 17:24:41 +00:00