Commit Graph

9 Commits

Author SHA1 Message Date
Thinker K.F. Li
c0d019b3ad Bug 1331173 - Increase header segment capacity for TaskTracer. r=billm 2017-03-10 02:35:00 +01:00
Steve Fink
13edc73b0e Bug 1264053 - Transfer DifferentProcess ArrayBuffers by copying, r=jorendorff 2017-01-19 14:02:40 -08:00
Kan-Ru Chen
be2c3f2c82 Bug 1305791 - Clear result.mSegments if MoveFallible failed. r=billm
MozReview-Commit-ID: 8UaGt1OEfhh
2016-09-30 17:37:44 +08:00
Kan-Ru Chen
628ff75708 Bug 1051567 - Make sure we resend file descriptors for the first chunk of a message. r=billm
Check if the buffers iterator was never consumed. This is a regression
introduced when converting ipc to use BufferList in bug 1262671.

MozReview-Commit-ID: LWAoVlI5CKJ
2016-08-30 18:26:59 +08:00
Kan-Ru Chen
62d1bdb8d6 Bug 1297981 - Delete BufferList::FlattenBytes and Pickle::FlattenBytes. r=billm
MozReview-Commit-ID: G3a4DN4Lovi
2016-08-25 17:15:38 +08: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
Kan-Ru Chen
8d6ee326c3 Bug 1264642 - Part 3. Add BufferList::MoveFallible. r=billm
It works like a move constructor but it's fallible. It can also move
data to different but compatible AllocPolicy.

MozReview-Commit-ID: LAbPWCwnrr6
2016-08-23 00:40:46 +08:00
Kan-Ru Chen
68a5f845a2 Bug 1264642 - Part 2. Add BufferList::Extract and Pickle::ExtractBuffers. r=billm
These methods allow us to move some buffers out of a pickle with minimum
copying. It's useful when the IPC deserialized type uses BufferList to
store data and we want to take the buffers from IPC directly.

Borrowing is not suitable to use for IPC to hand out data because we
often want to store the data somewhere for processing after IPC has
released the underlying buffers.

MozReview-Commit-ID: F1K2ZMkACqq
2016-08-23 00:40:45 +08:00
Bill McCloskey
2d5b42bb8d Bug 1262671 - Introduce MFBT BufferList class (r=froydnj) 2016-05-27 09:57:40 -07:00