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

54 Коммитов

Автор SHA1 Сообщение Дата
Simon Giesecke ac33c1f119 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/ipc. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D65179

--HG--
extra : moz-landing-system : lando
2020-03-06 09:11:40 +00:00
Andrea Marchesini b13b3b72d2 Bug 1611855 - Worklet must be part of the same parent's agentCluster - part 2 - CloneDataPolicy in writing, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D61182

--HG--
extra : moz-landing-system : lando
2020-02-06 13:46:25 +00:00
Narcis Beleuzu d259fe38d8 Backed out 13 changesets (bug 1611855) for wpt failures on /audioworklet-postmessage-sharedarraybuffer.https.html . CLOSED TREE
Backed out changeset 2b661d588f96 (bug 1611855)
Backed out changeset 16094fc92bc9 (bug 1611855)
Backed out changeset 3f89bbcaff92 (bug 1611855)
Backed out changeset a906501b6d92 (bug 1611855)
Backed out changeset 54738b88425d (bug 1611855)
Backed out changeset d27de910a6c0 (bug 1611855)
Backed out changeset 261902f6336d (bug 1611855)
Backed out changeset 380d83b61e62 (bug 1611855)
Backed out changeset 39aac60ebf5e (bug 1611855)
Backed out changeset 5ea099787376 (bug 1611855)
Backed out changeset d0f58871f838 (bug 1611855)
Backed out changeset e1be102310a9 (bug 1611855)
Backed out changeset 633357835540 (bug 1611855)

--HG--
rename : dom/base/test/test_postMessages_workers.html => dom/base/test/test_postMessages.html
2020-02-06 12:31:36 +02:00
Andrea Marchesini 87b1a8a547 Bug 1611855 - Worklet must be part of the same parent's agentCluster - part 2 - CloneDataPolicy in writing, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D61182

--HG--
extra : moz-landing-system : lando
2020-02-05 22:07:34 +00:00
Andrea Marchesini c4cb10712a Bug 1609990 - AgentCluster comparison in MessagePort and BroadcastChannel - part 3 - CloneDataPolicy, r=smaug,sfink,lth
Differential Revision: https://phabricator.services.mozilla.com/D60485

--HG--
extra : moz-landing-system : lando
2020-01-24 16:31:21 +00:00
Noemi Erli e4b712dcb8 Backed out 4 changesets (bug 1609990) for causing Spidermonkey rust bustage CLOSED TREE
Backed out changeset 81a77bb3772c (bug 1609990)
Backed out changeset d4524885cb97 (bug 1609990)
Backed out changeset c95aac908332 (bug 1609990)
Backed out changeset bae3e50ab64d (bug 1609990)
2020-01-24 18:13:24 +02:00
Andrea Marchesini ac6024f408 Bug 1609990 - AgentCluster comparison in MessagePort and BroadcastChannel - part 3 - CloneDataPolicy, r=smaug,sfink,lth
Differential Revision: https://phabricator.services.mozilla.com/D60485

--HG--
extra : moz-landing-system : lando
2020-01-24 15:25:24 +00:00
Andrea Marchesini c4d5364f80 Bug 1610020 - BroadcastChannel + wasm - part 5 - RefMessageBody for BroadcastChannels, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D60321

--HG--
extra : moz-landing-system : lando
2020-01-24 08:00:08 +00:00
Andrea Marchesini 94ac5ab147 Bug 1605566 - MessagePort + wasm - part 3 - MessagePort serializes objects using MessageData union, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D59614

--HG--
extra : moz-landing-system : lando
2020-01-24 07:58:21 +00:00
Narcis Beleuzu cb54b0227b Backed out 5 changesets (bug 1605566) for wpt failures on shared.html . CLOSED TREE
Backed out changeset 622939cef438 (bug 1605566)
Backed out changeset ab98304e6c84 (bug 1605566)
Backed out changeset 7eab8fd2b62e (bug 1605566)
Backed out changeset 99f61f25ed86 (bug 1605566)
Backed out changeset 77bdf4f86052 (bug 1605566)
2020-01-22 12:58:13 +02:00
Andrea Marchesini 4da71e81af Bug 1605566 - MessagePort + wasm - part 3 - MessagePort serializes objects using MessageData union, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D59614

--HG--
extra : moz-landing-system : lando
2020-01-22 09:33:11 +00:00
Mihai Alexandru Michis 4345a38d0d Backed out 9 changesets (bug 1607791, bug 1605566) for causing multiple wpt failures.
CLOSED TREE

Backed out changeset 39f34852842e (bug 1605566)
Backed out changeset 3427a92445c8 (bug 1605566)
Backed out changeset 36631ec96f1f (bug 1605566)
Backed out changeset 554b2bdce66c (bug 1605566)
Backed out changeset 37026beadbd8 (bug 1605566)
Backed out changeset f15835338319 (bug 1607791)
Backed out changeset 4c92f506cf62 (bug 1607791)
Backed out changeset 80707bcc8427 (bug 1607791)
Backed out changeset 75bc7533c899 (bug 1607791)
2020-01-15 13:45:33 +02:00
Andrea Marchesini a7fa32643f Bug 1605566 - MessagePort + wasm - part 3 - MessagePort serializes objects using MessageData union, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D59614

--HG--
extra : moz-landing-system : lando
2020-01-15 10:01:11 +00:00
Andrew McCreight d1d5f1b27f Bug 1604689 - Fix 'identfiers' typos. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D57595

--HG--
extra : moz-landing-system : lando
2019-12-18 04:35:04 +00:00
Gabriele Svelto ace6d1063f Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

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

--HG--
extra : moz-landing-system : lando
2019-12-06 09:24:56 +00:00
Dorel Luca a381d5c96d Backed out changeset f6e53d1c6518 (bug 1600545) for Android build bustage. CLOSED TREE 2019-12-04 17:32:27 +02:00
Gabriele Svelto bc9290f767 Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

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

--HG--
extra : moz-landing-system : lando
2019-12-04 15:01:19 +00:00
Tom Tung be1286818d Bug 1562663 - P4a - Deny sharing memery by default for DataClonePolicy; r=nika,lth
Differential Revision: https://phabricator.services.mozilla.com/D45187

--HG--
extra : moz-landing-system : lando
2019-09-26 13:27:25 +00:00
Barret Rennie 0c2335e52f Bug 1289211 - Rename InfallibleTArray to nsTArray in dom/ipc/ r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D36945

--HG--
extra : moz-landing-system : lando
2019-07-10 03:27:27 +00:00
Nika Layzell 305c3ca912 Bug 1522579 - Part 3: Remove consumers of nsIContentChild, r=mccr8
Like Part 2, however for `nsIContentChild`.

Depends on D20550

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

--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:49 +00:00
Nika Layzell 1e93329f70 Bug 1522579 - Part 2: Remove consumers of nsIContentParent, r=mccr8
This patch tries to move them to `ContentParent` instead.

`ProcessPriorityManagerImpl::ObserveContentParentCreated` could not be moved
due to using `do_QueryInterface` to cast from a `nsISupports` down to the
`ContentParent` object. This could be fixed to remove the interfaces entirely,
but I left that for a follow-up.

Depends on D20549

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

--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:47 +00:00
Andreea Pavel cd1b27ad4d Backed out 6 changesets (bug 1522579) for build bustages on a CLOSED TREE
Backed out changeset 3c8320baa230 (bug 1522579)
Backed out changeset 0a288a3d85cd (bug 1522579)
Backed out changeset ecfd27e7d150 (bug 1522579)
Backed out changeset eda40fca0758 (bug 1522579)
Backed out changeset 5c7aafa32a0a (bug 1522579)
Backed out changeset a3c5a2c16411 (bug 1522579)
2019-02-25 18:19:38 +02:00
Nika Layzell da5b73b6a0 Bug 1522579 - Part 3: Remove consumers of nsIContentChild, r=mccr8
Like Part 2, however for `nsIContentChild`.

Depends on D20550

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

--HG--
extra : moz-landing-system : lando
2019-02-25 15:51:19 +00:00
Nika Layzell ae293bbea9 Bug 1522579 - Part 2: Remove consumers of nsIContentParent, r=mccr8
This patch tries to move them to `ContentParent` instead.

`ProcessPriorityManagerImpl::ObserveContentParentCreated` could not be moved
due to using `do_QueryInterface` to cast from a `nsISupports` down to the
`ContentParent` object. This could be fixed to remove the interfaces entirely,
but I left that for a follow-up.

Depends on D20549

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

--HG--
extra : moz-landing-system : lando
2019-02-25 15:51:12 +00:00
Sylvestre Ledru 265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Kris Maglione 231c722473 Bug 1477129: Part 1 - Handle BlobImpls when move constructing StructuredCloneData. r=baku
MozReview-Commit-ID: F1pm9qTpGCV

--HG--
extra : rebase_source : ad992a07392b7addd8edc000f56d473f30e9cecc
2018-07-19 18:14:13 -07:00
Kris Maglione 03bf0b5bdd Bug 1463587: Part 2 - Add a shared-memory structured clone key-value store. r=erahm,bz
This class allows one read-write copy of a map in the parent process to share
data with multiple read-only copies in child processes. The maps only hold
onto data as structured clone blobs, and deserialize them each time a key is
read.

This commit only provides the bare-bones data structures. Follow-ups will add
bindings, change events, and automatic flushes.

MozReview-Commit-ID: LimwfmFBNOi

--HG--
extra : rebase_source : e43985c39bd1cfd05a2ad536b0d7f74db494a753
extra : source : c27295337b4c16e2a178106a3aa873d2a0e5a1f4
2018-06-22 20:35:49 -07:00
Margareta Eliza Balazs 7b416abaf1 Backed out 10 changesets (bug 1470783, bug 1463587) for causing multiple leakcheck failures on a CLOSED TREE
Backed out changeset cd2080bd727a (bug 1463587)
Backed out changeset 5866137afd9a (bug 1463587)
Backed out changeset d64e1c150db2 (bug 1463587)
Backed out changeset 669f084e8914 (bug 1463587)
Backed out changeset 8074c985095c (bug 1470783)
Backed out changeset 49ed13196e9f (bug 1463587)
Backed out changeset c052042a66cf (bug 1463587)
Backed out changeset cebf1f055d1d (bug 1463587)
Backed out changeset 2ebaf5f8c605 (bug 1463587)
Backed out changeset c27295337b4c (bug 1463587)
2018-07-12 11:27:45 +03:00
Kris Maglione 830989c99a Bug 1463587: Part 2 - Add a shared-memory structured clone key-value store. r=erahm,bz
This class allows one read-write copy of a map in the parent process to share
data with multiple read-only copies in child processes. The maps only hold
onto data as structured clone blobs, and deserialize them each time a key is
read.

This commit only provides the bare-bones data structures. Follow-ups will add
bindings, change events, and automatic flushes.

MozReview-Commit-ID: LimwfmFBNOi

--HG--
extra : rebase_source : a6959c9f3186af7252ac2899f6801d5e02b62222
2018-06-22 20:35:49 -07:00
Jan de Mooij 4f7b2378dc Bug 1474273 - Add xpc::CurrentNativeGlobal and use it instead of NativeGlobal(JS::CurrentGlobalOrNull(cx)). r=bz 2018-07-11 14:07:02 +02:00
Kris Maglione 2bbae5374b Bug 1470365: Part 1 - Add a compact, read-only, shared-memory string map class. r=erahm
This class implements a shared memory key-value store that fits into a single
memory mapped segment. All of the runtime data for its instances are stored in
the shared memory region, which means that memory overhead for each instance
in each process is only a few bytes.

Importantly, the key and value strings returned by this class are also
pointers into the shared memory region, which means that once an instance is
created, its memory cannot be unmapped until process shutdown.

For the uses I intend to put it to, this is a reasonable constraint. If we
need to use it for shorter-lived maps in the future, we can add an option to
return non-literal dependent strings that will be copied if they need to be
kept alive long term.

MozReview-Commit-ID: 5BwAaDsb7HS

--HG--
extra : rebase_source : b472fe628018f88a2c4d6b3de4b7143aeca55e14
extra : absorb_source : 5cdeb568cfd2b4a5a767191402e699e61e653b3b
2018-06-29 22:50:41 -07:00
Ben Kelly 3a5e219e04 Bug 1462466 P3 Fix StructuredCloneData::CopyFromCloneMessageDataForBackgroundParent() to use CopyMemory instead of BorrowMemory. r=baku 2018-06-25 07:03:18 -07:00
Ben Kelly f2e4fded62 Bug 1462466 P1 Add a ServiceWorkerCloneData type with threadsafe ref-counting. r=baku 2018-06-25 07:03:18 -07:00
Emilio Cobos Álvarez fffb25b74f 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
Steve Fink e1fedf5974 Bug 1442722 - Move scope into JSStructuredData, r=baku,jorendorff
--HG--
extra : topic : clone.refactor
extra : rebase_source : 657bfd1a4c87de0a27c99e685adbf739c907ed6c
2018-04-03 11:17:33 -07:00
Steve Fink c92957a424 Bug 1455071 - Use delegation rather than inheritance for the BufferList in JSStructuredCloneData, r=jorendorff,r=baku
--HG--
extra : rebase_source : 1620d0a2d99d9aeddd7d06b4f29251907311ef86
extra : histedit_source : 59145661383b920085164eff3586a78da41c420b
2018-03-15 16:56:09 -07:00
Boris Zbarsky 8c18063150 Bug 1452010 part 3. Remove nsIDOMDOMException. r=qdot
MozReview-Commit-ID: AFKzyxCyriJ
2018-04-06 23:29:13 -04:00
Andrea Marchesini 03ffca06a1 Bug 1353629 - PBlob refactoring - part 3 - IPCBlob in ClonedMessageData, r=smaug
This is the first use of IPCBlob: ClonedMessageData.
ClonedMessageData is used for BroadcastChannel, MessagePort and any
postMessage() communication. This patch changes StructuredCloneData in order to
use IPCBlob instead of PBlob.
BroadcastChannel has a custom way to manage Blobs because when the parent
receives them from a content process, it must send them to any other
BroadcastChild actor duplicating the serialization.
2017-04-24 12:09:40 +02:00
Andrea Marchesini df043c04b6 Bug 1350386 - Make nsInputStream structuredCloneable, r=mystor 2017-04-05 19:02:57 +02:00
Andrew Sutherland 7390cfe98f Bug 1315913 - Part 1: Move nsFrameMessenger structured clone Build/Unpack into StructuredCloneData and expand to support PBackground. r=baku 2016-11-21 04:06:41 -05:00
Andrea Marchesini a39665a2a2 Bug 1312817 - support {window,worker}.postMessage() of WebAssembly.Module, r=qdot, r=luke 2016-10-28 14:44:04 +02:00
Carsten "Tomcat" Book fa86fa4b7f Backed out changeset 19e79becc540 (bug 1312817) for failures in own test on android 2016-10-28 12:14:30 +02:00
Andrea Marchesini 937298e1fb Bug 1312817 - support {window,worker}.postMessage() of WebAssembly.Module, r=qdot, r=luke 2016-10-27 20:50:23 +02:00
Lars T Hansen 9f439ac1de Bug 1302036 - DOM changes to conform to new JS engine API for cloning. r=baku
--HG--
extra : rebase_source : bc9bda42eb0769f2fe76d702a41278e01bb497d7
2016-10-24 15:14:45 +02:00
Kan-Ru Chen 506dfe6ea3 Bug 1264642 - Part 4. Use BufferList to replace raw buffers in StructuredClone. r=baku r=billm r=jorendorff
In JS StructuredClone BufferList<SystemAllocPolicy> is typedef'd to
JSStructuredCloneData and use everywhere in gecko that stores structured
clone data.

This patch changed some raw pointers to UniquePtr<JSStructuredCloneData>
and some to stack allocated JSStructuredCloneData for better life time
management. Some parameters or methods are deleted because of changing
to the new data structure.

MessagePortMessage now has the exactly same structure with
ClonedMessageData. Maybe in the future they can be consolidated.

MozReview-Commit-ID: 1IY9p5eKLgv
2016-08-23 00:40:46 +08:00
Bill McCloskey 2e4314c9a7 Bug 1262671 - IPC ReadData/ReadBytes elimination (r=froydnj) 2016-05-27 09:57:39 -07:00
Bill McCloskey 291c555f34 Bug 1262671 - void** -> PickleIterator (r=froydnj) 2016-05-27 09:57:38 -07:00
Mantaroh Yoshinaga fa2b32d1a6 Bug 1174624 - Add PortIdentifier copy code in order to communicate with same process. r=baku 2016-02-15 19:43:00 +01:00
Mantaroh Yoshinaga 0d77c71c32 Bug 1174624 - Add the Transferable parameter into SendAsyncMessage of nsFrameMessageManager. r=baku 2016-01-31 22:48:00 +01:00
Morris Tseng 8181a0e4ec Bug 1215438 - Part 2: Add transfer support for ImageBitmap. r=baku
--HG--
extra : commitid : 79U2wpZIJ6W
2015-12-18 14:52:16 +08:00