Commit Graph

85 Commits

Author SHA1 Message Date
Kris Maglione
a8fd3a7b22 Bug 1356546: Part 1 - Add a StructuredCloneHolder JS helper to hold opaque structured clone blobs. r=billm
There are several places in the WebExtensions framework where we currently
need to repeatedly serialize and deserialize structured clone data as it
passes through message managers, which can lead to significant performance
issues.

This helper class lets us serialize a value directly from the source extension
context into an opaque blob, and then directly deserialize it into the target
context on the other end, with no X-ray overhead or clones into privileged
scopes in-between.

MozReview-Commit-ID: 4QzHi89onxc
2017-05-20 15:09:24 -07:00
Andrea Marchesini
1741913b1f Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Sebastian Hengst
ca7e47ba22 Backed out changeset c3251f5022dd (bug 1359718) 2017-05-23 19:12:25 +02:00
Andrea Marchesini
1562ff375d Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Sebastian Hengst
3496844ce8 Backed out changeset 537abc431472 (bug 1359718) 2017-05-23 18:34:40 +02:00
Andrea Marchesini
506bb525b7 Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
Andrea Marchesini
e8ec8715f3 Bug 1359005 - Cleanup the use of PBlob in StructuredCloneHolder - part 2 - StructuredCloneHolder, r=smaug 2017-05-23 07:50:09 +02:00
Andrea Marchesini
6e9e4bc94e Bug 1350386 - Make nsInputStream structuredCloneable, r=mystor 2017-04-05 19:02:57 +02:00
Andrea Marchesini
62c448abf2 Bug 1351250 - StructuredCloneAlgorithm must cleanup mWasmModule correctly, r=qdot 2017-03-29 08:47:49 +02:00
Andrea Marchesini
5ca36e2e16 Bug 1346801 - Make Directory object always cloneable, r=qdot 2017-03-14 11:38:31 +01:00
Michael Layzell
227013f950 Bug 1331434 - Part 9: Return after ErrorResult::Throw in /dom, r=ehsan
MozReview-Commit-ID: CWjx4L8LTr9
2017-03-07 19:06:48 -05:00
Andrea Marchesini
720fe6f6e6 Bug 1331849 - Replace NS_NewNativeLocalFile with NS_NewLocalFile in dom, r=smaug 2017-01-18 14:58:37 +01:00
Jeff Gilbert
b60abdac0e Bug 1324924 - Support ImageBitmap for Tex*Image*. (flattened) - r=bz,daoshengmu,mtseng
MozReview-Commit-ID: JzcbzeFHyHn
2016-12-20 19:24:25 -08:00
Andrea Marchesini
37766315d4 Bug 1321261 - create dom/file for File APIs, r=qdot 2016-12-01 15:12:42 +01:00
Sebastian Hengst
903cc3ec3c Backed out changeset d3ef6f3e9193 (bug 1321261) for build bustage (calling missing file BlobParent.h from dom/ipc/TabParent.cpp). r=backout on a CLOSED TREE 2016-12-01 12:27:28 +01:00
Andrea Marchesini
4982909415 Bug 1321261 - create dom/file for File APIs, r=qdot 2016-12-01 11:43:18 +01:00
Sebastian Hengst
abf5b533a9 Backed out changeset 806c3d121dd4 (bug 1321261) for timing out in test_fileapi.html, test_mozfiledataurl.html and test_nonascii_blob_url.html on Linux x64 asan and debug. r=backout 2016-12-01 11:05:56 +01:00
Andrea Marchesini
1837b28622 Bug 1321261 - create dom/file for File APIs, r=qdot 2016-12-01 09:21:54 +01:00
Andrea Marchesini
23b7f41d05 Bug 1317725 -Correct creation of Sliced Remote Blob actorss when used in FormData in workers, r=smaug 2016-11-16 15:04:23 +01:00
Andrea Marchesini
5c5b24129f Bug 1312817 - support {window,worker}.postMessage() of WebAssembly.Module, r=qdot, r=luke 2016-10-28 14:44:04 +02:00
Carsten "Tomcat" Book
621d8d7cf1 Backed out changeset 19e79becc540 (bug 1312817) for failures in own test on android 2016-10-28 12:14:30 +02:00
Andrea Marchesini
03ed395de9 Bug 1312817 - support {window,worker}.postMessage() of WebAssembly.Module, r=qdot, r=luke 2016-10-27 20:50:23 +02:00
Andrea Marchesini
1f0f0c675e Bug 1313004 - ServiceWorkerMessageEvent can be generated code, r=qdot 2016-10-26 22:00:17 +02:00
Lars T Hansen
30645f2bc5 Bug 1302036 - DOM changes to conform to new JS engine API for cloning. r=baku 2016-10-24 15:14:45 +02:00
Michelangelo De Simone
679e26c089 Bug 1310859 - Remove DOM/nfc and related code. r=jst
MozReview-Commit-ID: FiS7uGytipN
2016-10-18 15:16:56 -07:00
Nathan Froyd
e77b500478 Bug 1304017 - improve MultipartBlobImpl refcounting; r=baku
MultipartBlobImpl always requires copying the incoming BlobImpl array.
This copying, and its associated refcounting, is unnecessary in many
cases, as we're just going to delete the copied-from array anyway.  We
might as well pass in ownership when creating the multipart blob and
avoid all the overhead associated with copying and refcounting.
2016-09-20 21:29:28 -04:00
Fariskhi Vidyan
20a370be33 Bug 1300886 - Add URLSearchParamsBinding.h to StructuredCloneHolder header. r=baku 2016-09-06 16:02:00 -04:00
Kan-Ru Chen
e8b75a6839 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
b535b86839 Bug 1264053 - MessagePort should support transferable objects in multi-e10s - part 2, r=sfink 2016-08-17 07:54:00 +02:00
Andrea Marchesini
c8a40161f0 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
b8bca820c3 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
Thomas Wisniewski
e217486fc0 Bug 1207233 - Part 2: Make URLSearchParams nsIXHRSendable as well as clonable, and have XHRs set the correct request content type for them. r=baku 2016-07-11 15:03:44 -04:00
Carsten "Tomcat" Book
085451dc7a Backed out changeset ff7dbda6a6d0 (bug 1207233) 2016-07-12 11:40:00 +02:00
Thomas Wisniewski
e892c7d08c Bug 1207233 - Part 2: Make URLSearchParams nsIXHRSendable as well as clonable, and have XHRs set the correct request content type for them. r=baku 2016-07-11 15:03:44 -04:00
Andrea Marchesini
3554bf8908 Bug 1279889 - Some rv.SuppressException() missing in StructuredCloneHolder, r=smaug 2016-06-14 13:10:39 +01:00
Andrea Marchesini
1eae272943 Bug 1279883 - Directory should not always be clonable across threads and processes, r=smaug 2016-06-14 12:51:41 +01:00
Andrea Marchesini
b4480fa824 Bug 1263992 - patch 1 - Remove DirectoryType enum, r=smaug 2016-04-18 03:32:30 -04:00
Andrea Marchesini
c82e01edda Bug 1258482 - FileList should contain only Files, not Directories, r=smaug 2016-04-12 08:51:52 -04:00
Andrea Marchesini
31f9661a43 Bug 1257180 - patch 2 - Directory can be sent via postMessage(), r=smaug 2016-04-12 08:51:04 -04:00
Sebastian Hengst
8024005887 Backed out changeset 83ce34cabf08 (bug 1257180) 2016-04-12 17:56:08 +02:00
Sebastian Hengst
7a7e7dc5ea Backed out changeset 166555b48e77 (bug 1258482) 2016-04-12 17:56:00 +02:00
Andrea Marchesini
9b45b36a7e Bug 1258482 - FileList should contain only Files, not Directories, r=smaug 2016-04-12 08:51:52 -04:00
Andrea Marchesini
3dd6b870c7 Bug 1257180 - patch 2 - Directory can be sent via postMessage(), r=smaug 2016-04-12 08:51:04 -04:00
Tim Taubert
5443c0f240 Bug 842818 - Enable structured cloning for CryptoKeys across threads r=baku,keeler 2016-01-20 23:22:41 +01:00
Kyle Huey
20d0dc7286 Bug 1259294: Part 2 - Use MOZ_ALWAYS_SUCCEEDS. r=froydnj 2016-03-28 10:28:15 -07:00
Andrea Marchesini
2534272582 Bug 1173320 - patch 6/8 - Make FileList clonable to workers if it doesn't contain Directories, r=smaug 2016-03-20 11:56:10 +01:00
Andrea Marchesini
36c988a737 Bug 1173320 - patch 4/8 - Directory in FileList, r=smaug 2016-03-20 11:56:10 +01:00
Phil Ringnalda
9e96cfb31d Backed out 8 changesets (bug 1173320) for adding dom/filesystem/tests/test_basic.html without making it work on Android
Backed out changeset 7e3a105b9160 (bug 1173320)
Backed out changeset 094819fbb07f (bug 1173320)
Backed out changeset 23b0e55ff1db (bug 1173320)
Backed out changeset 8bf8e2fcedad (bug 1173320)
Backed out changeset 3de390c6f47f (bug 1173320)
Backed out changeset fb298010e12e (bug 1173320)
Backed out changeset f1a965c2f796 (bug 1173320)
Backed out changeset 176128ba757f (bug 1173320)
2016-03-19 19:44:22 -07:00
Andrea Marchesini
e37cb1ecb9 Bug 1173320 - patch 6/8 - Make FileList clonable to workers if it doesn't contain Directories, r=smaug 2016-03-19 22:29:47 +01:00
Andrea Marchesini
4e0ff900f3 Bug 1173320 - patch 4/8 - Directory in FileList, r=smaug 2016-03-19 22:29:46 +01:00