Commit graph

52 commits

Author SHA1 Message Date
Simon Giesecke
94b0165df6 Bug 1678374 - Avoid including js/RootingAPI.h from header files. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D97616

Depends on D97467
2020-11-23 16:12:12 +00:00
Simon Giesecke
9093e5e1bf Bug 1673424 - Fix includes around JS/StructuredClone.h.
Differential Revision: https://phabricator.services.mozilla.com/D94762

Depends on D93568
2020-11-23 16:06:52 +00:00
Simon Giesecke
17eaf9bf3f Bug 1676152 - Generalize StructuredCloneHolder::WriteString to accept a nsAString. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D96415
2020-11-13 07:55:16 +00:00
Ted Campbell
e1567ac5ab Bug 1599634 - Move the JS::WasmModule definition to own header r=bbouvier
Also add `JS::WasmModule::createObjectForAsmJS` which is similar to
`createObject` but does not set the WasmModule prototype. Also mark these
methods as const so they work with the `SharedModule` definition.

Differential Revision: https://phabricator.services.mozilla.com/D78088
2020-06-04 15:36:11 +00:00
Tom Tung
0e080c84cd Bug 1613900 - P2 - Report original JS error message to StructuredCloneCallbacksError; r=baku,sfink
The idea is to propagate error messages defined in js.msg to
StructuredCloneHolder and throw it with a data clone error later. So that
developers can still understand the reason why serialization/deserialization
fails and we don't need to implement two similar set of error messages on JS and
DOM sides.

Note that this patch gave up the original idea (report error message to
console), but developers can stil get the error message by catching the
exception.

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

--HG--
extra : moz-landing-system : lando
2020-02-14 13:45:47 +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
0077863f8e Bug 1605566 - MessagePort + wasm - part 2 - implement JS::StructuredCloneScope::UnknownDestination, r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D59613

--HG--
extra : moz-landing-system : lando
2020-01-24 07:57:56 +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
14b6fd8572 Bug 1605566 - MessagePort + wasm - part 2 - implement JS::StructuredCloneScope::UnknownDestination, r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D59613

--HG--
extra : moz-landing-system : lando
2020-01-22 09:32:48 +00:00
Emilio Cobos Álvarez
256c124f94 Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj
This was done by:

This was done by applying:

```
diff --git a/python/mozbuild/mozbuild/code-analysis/mach_commands.py b/python/mozbuild/mozbuild/code-analysis/mach_commands.py
index 789affde7bbf..fe33c4c7d4d1 100644
--- a/python/mozbuild/mozbuild/code-analysis/mach_commands.py
+++ b/python/mozbuild/mozbuild/code-analysis/mach_commands.py
@@ -2007,7 +2007,7 @@ class StaticAnalysis(MachCommandBase):
         from subprocess import Popen, PIPE, check_output, CalledProcessError

         diff_process = Popen(self._get_clang_format_diff_command(commit), stdout=PIPE)
-        args = [sys.executable, clang_format_diff, "-p1", "-binary=%s" % clang_format]
+        args = [sys.executable, clang_format_diff, "-p1", "-binary=%s" % clang_format, '-sort-includes']

         if not output_file:
             args.append("-i")
```

Then running `./mach clang-format -c <commit-hash>`

Then undoing that patch.

Then running check_spidermonkey_style.py --fixup

Then running `./mach clang-format`

I had to fix four things:

 * I needed to move <utility> back down in GuardObjects.h because I was hitting
   obscure problems with our system include wrappers like this:

0:03.94 /usr/include/stdlib.h:550:14: error: exception specification in declaration does not match previous declaration
0:03.94 extern void *realloc (void *__ptr, size_t __size)
0:03.94              ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/malloc_decls.h:53:1: note: previous declaration is here
0:03.94 MALLOC_DECL(realloc, void*, void*, size_t)
0:03.94 ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/mozilla/mozalloc.h:22:32: note: expanded from macro 'MALLOC_DECL'
0:03.94     MOZ_MEMORY_API return_type name##_impl(__VA_ARGS__);
0:03.94                                ^
0:03.94 <scratch space>:178:1: note: expanded from here
0:03.94 realloc_impl
0:03.94 ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/mozmemory_wrap.h:142:41: note: expanded from macro 'realloc_impl'
0:03.94 #define realloc_impl mozmem_malloc_impl(realloc)

   Which I really didn't feel like digging into.

 * I had to restore the order of TrustOverrideUtils.h and related files in nss
   because the .inc files depend on TrustOverrideUtils.h being included earlier.

 * I had to add a missing include to RollingNumber.h

 * Also had to partially restore include order in JsepSessionImpl.cpp to avoid
   some -WError issues due to some static inline functions being defined in a
   header but not used in the rest of the compilation unit.

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

--HG--
extra : moz-landing-system : lando
2020-01-20 16:19:48 +00:00
Emilio Cobos Álvarez
aa3a695712 Bug 1609996 - Remove mozilla/Move.h. r=froydnj
rg -l 'mozilla/Move.h' | xargs sed -i 's/#include "mozilla\/Move.h"/#include <utility>/g'

Further manual fixups and cleanups to the include order incoming.

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

--HG--
extra : moz-landing-system : lando
2020-01-20 16:18:20 +00:00
Andrea Marchesini
a9cf3442be Bug 1607791 - Get rid of IDBMutableFile.getFile() - part 3 - Rename SameProcessDifferentThread to SameProcess, r=asuth,sfink
Differential Revision: https://phabricator.services.mozilla.com/D59142

--HG--
extra : moz-landing-system : lando
2020-01-15 12:02:17 +00:00
Andrea Marchesini
7af68b55f9 Bug 1607791 - Get rid of IDBMutableFile.getFile() - part 2 - Remove SameProcessSameThread, r=asuth,sfink
Differential Revision: https://phabricator.services.mozilla.com/D59141

--HG--
extra : moz-landing-system : lando
2020-01-15 12:02:19 +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
c5b0781d9f Bug 1605566 - MessagePort + wasm - part 2 - implement JS::StructuredCloneScope::UnknownDestination, r=sfink
Differential Revision: https://phabricator.services.mozilla.com/D59613

--HG--
extra : moz-landing-system : lando
2020-01-15 10:00:59 +00:00
Andrea Marchesini
6d6aa4cc66 Bug 1607791 - Get rid of IDBMutableFile.getFile() - part 3 - Rename SameProcessDifferentThread to SameProcess, r=asuth,sfink
Differential Revision: https://phabricator.services.mozilla.com/D59142

--HG--
extra : moz-landing-system : lando
2020-01-15 09:59:16 +00:00
Andrea Marchesini
3cd17a373a Bug 1607791 - Get rid of IDBMutableFile.getFile() - part 2 - Remove SameProcessSameThread, r=asuth,sfink
Differential Revision: https://phabricator.services.mozilla.com/D59141

--HG--
extra : moz-landing-system : lando
2020-01-15 09:58:59 +00:00
Tom Tung
f24d6deaf7 Bug 1583251 - P3 - Check if it is okay to allow shared memory while deserializing; r=nika,lth
Differential Revision: https://phabricator.services.mozilla.com/D48349

--HG--
extra : moz-landing-system : lando
2019-10-23 07:20:18 +00:00
Tom Tung
a0d1f674b6 Bug 1583251 - P2 - Fix some format nits or naming nits for StructuredClone::Write; r=nika,lth
Differential Revision: https://phabricator.services.mozilla.com/D48348

--HG--
extra : moz-landing-system : lando
2019-10-23 07:20:05 +00:00
Andrea Marchesini
6797e45278 Bug 1585284 - Use nsIGlobalObject in any Blob/File CTOR, r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D49392

--HG--
extra : moz-landing-system : lando
2019-10-21 05:33:33 +00:00
Razvan Maries
f9d8db28af Backed out 5 changesets (bug 1583251) for rust build bustages. CLOSED TREE
Backed out changeset bfe390ad771b (bug 1583251)
Backed out changeset 0113c698b44d (bug 1583251)
Backed out changeset 248ad59168dd (bug 1583251)
Backed out changeset 5d5e3dc17118 (bug 1583251)
Backed out changeset 9e9eaa78c436 (bug 1583251)
2019-10-18 17:59:20 +03:00
Tom Tung
5ba65c0735 Bug 1583251 - P3 - Check if it is okay to allow shared memory while deserializing; r=nika,lth
Differential Revision: https://phabricator.services.mozilla.com/D48349

--HG--
extra : moz-landing-system : lando
2019-10-15 13:42:25 +00:00
Tom Tung
c291baa433 Bug 1583251 - P2 - Fix some format nits or naming nits for StructuredClone::Write; r=nika,lth
Differential Revision: https://phabricator.services.mozilla.com/D48348

--HG--
extra : moz-landing-system : lando
2019-10-15 13:49:26 +00:00
Boris Zbarsky
a136313b5e Bug 1350254 part 7. Consolidate ReadString/WriteString helpers for structured serialization. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D35721

--HG--
extra : moz-landing-system : lando
2019-06-25 06:48:33 +00:00
Ehsan Akhgari
e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01: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
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
Ben Kelly
f5e9ed5787 Bug 1461667 P2 Remove StructuredCloneHolder's move constructor. r=baku 2018-05-15 11:19:47 -07:00
Andrea Marchesini
cb4b451b23 Bug 1441141 - Update the StructuredCloneAlgorithm to follow the latest version of the spec, r=smaug, r=sfink 2018-03-28 09:23:17 +02:00
Andrew McCreight
298aa82710 Bug 1412125, part 2 - Fix dom/ mode lines. r=qdot
This was automatically generated by the script modeline.py.

MozReview-Commit-ID: BgulzkGteAL

--HG--
extra : rebase_source : a4b9d16a4c06c4e85d7d85f485221b1e4ebdfede
2017-10-26 15:08:41 -07:00
Kris Maglione
8683b183cd Bug 1382645: Part 1 - Add memory reporter for StructuredCloneHolder binding implementation. r=billm
MozReview-Commit-ID: aK3ljfCJVi

--HG--
extra : rebase_source : d788c6c686cc72b423ca100795a379d343c398db
2017-07-25 14:53:41 -07:00
Bill McCloskey
aefa2aa5da Bug 1365097 - Convert NS_GetCurrentThread uses in dom (except for dom/media) (r=smaug)
For the Quatum DOM project, it's better to work in terms of event targets than
threads. This patch converts DOM code to operate on event targets rather than
threads, when possible.

MozReview-Commit-ID: 5FgvpKadUA2
2017-06-12 20:20:08 -07:00
Andrea Marchesini
df043c04b6 Bug 1350386 - Make nsInputStream structuredCloneable, r=mystor 2017-04-05 19:02:57 +02: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
Andrea Marchesini
92035ed242 Bug 1313004 - ServiceWorkerMessageEvent can be generated code, r=qdot 2016-10-26 22:00:17 +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
b4cf4bec61 Bug 1264642 - Part 6. Mark JSStructuredCloneData as MOZ_NON_MEMMOVABLE and add specializations in nsTArray.h. r=froydnj
MozReview-Commit-ID: HltgzBnxMsn
2016-08-23 00:40:47 +08: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
Andrea Marchesini
a183983968 Bug 1264053 - MessagePort should support transferable objects in multi-e10s, r=sfink, r=smaug, r=jorendorff, r=janv 2016-07-21 15:29:42 +02:00
Andrea Marchesini
3c6ff93c8f Bug 1186932 - Implement support for form submission of a picked directory - part 1 - FormData and Directory, r=smaug 2016-07-14 09:01:31 +02: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
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
Nathan Froyd
01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00