Coverage Report

Created: 2018-09-25 14:53

/work/obj-fuzz/ipc/ipdl/PWebRenderBridgeParent.cpp
Line
Count
Source (jump to first uncovered line)
1
//
2
// Automatically generated by ipdlc.
3
// Edit at your own risk
4
//
5
6
7
#include "mozilla/layers/PWebRenderBridgeParent.h"
8
#include "FrameMetrics.h"
9
#include "mozilla/layers/CompositorTypes.h"
10
11
#include "mozilla/layers/PCompositorBridgeParent.h"
12
#include "mozilla/layers/PTextureParent.h"
13
14
#include "nsIFile.h"
15
#include "GeckoProfiler.h"
16
17
namespace mozilla {
18
namespace layers {
19
20
21
auto PWebRenderBridgeParent::ActorDestroy(ActorDestroyReason aWhy) -> void
22
0
{
23
0
}
24
25
MOZ_IMPLICIT PWebRenderBridgeParent::PWebRenderBridgeParent() :
26
    mozilla::ipc::IProtocol(mozilla::ipc::ParentSide),
27
    mLivenessState(mozilla::ipc::LivenessState::Dead)
28
0
{
29
0
    MOZ_COUNT_CTOR(PWebRenderBridgeParent);
30
0
}
31
32
PWebRenderBridgeParent::~PWebRenderBridgeParent()
33
0
{
34
0
    MOZ_COUNT_DTOR(PWebRenderBridgeParent);
35
0
}
36
37
auto PWebRenderBridgeParent::Manager() const -> PCompositorBridgeParent*
38
0
{
39
0
    return static_cast<PCompositorBridgeParent*>(IProtocol::Manager());
40
0
}
41
42
auto PWebRenderBridgeParent::SendWrUpdated(
43
        const IdNamespace& aNewIdNamespace,
44
        const TextureFactoryIdentifier& textureFactoryIdentifier) -> bool
45
0
{
46
0
    IPC::Message* msg__ = PWebRenderBridge::Msg_WrUpdated(Id());
47
0
48
0
    WriteIPDLParam(msg__, this, aNewIdNamespace);
49
0
    // Sentinel = 'aNewIdNamespace'
50
0
    (msg__)->WriteSentinel(4014714848);
51
0
    WriteIPDLParam(msg__, this, textureFactoryIdentifier);
52
0
    // Sentinel = 'textureFactoryIdentifier'
53
0
    (msg__)->WriteSentinel(1630882508);
54
0
55
0
56
0
57
0
58
0
    if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
59
0
        mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
60
0
    }
61
0
    AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_WrUpdated", OTHER);
62
0
    if ((!(StateTransition(false, (&(mLivenessState)))))) {
63
0
        mozilla::ipc::LogicError("Transition error");
64
0
    }
65
0
66
0
    bool sendok__ = (GetIPCChannel())->Send(msg__);
67
0
    return sendok__;
68
0
}
69
70
auto PWebRenderBridgeParent::Send__delete__(PWebRenderBridgeParent* actor) -> bool
71
0
{
72
0
    if ((!(actor))) {
73
0
        return false;
74
0
    }
75
0
76
0
    IPC::Message* msg__ = PWebRenderBridge::Msg___delete__((actor)->Id());
77
0
78
0
    MOZ_RELEASE_ASSERT(actor, "NULL actor value passed to non-nullable param");
79
0
    WriteIPDLParam(msg__, actor, actor);
80
0
    // Sentinel = 'actor'
81
0
    (msg__)->WriteSentinel(875202478);
82
0
83
0
84
0
85
0
    if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
86
0
        mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", (actor)->OtherPid(), "Sending ", (msg__)->type(), mozilla::ipc::MessageDirection::eSending);
87
0
    }
88
0
    AUTO_PROFILER_LABEL("PWebRenderBridge::Msg___delete__", OTHER);
89
0
    if ((!(StateTransition(true, (&((actor)->mLivenessState)))))) {
90
0
        mozilla::ipc::LogicError("Transition error");
91
0
    }
92
0
93
0
    bool sendok__ = ((actor)->GetIPCChannel())->Send(msg__);
94
0
95
0
    IProtocol* mgr = (actor)->Manager();
96
0
    (actor)->DestroySubtree(Deletion);
97
0
    (actor)->DeallocSubtree();
98
0
    (mgr)->RemoveManagee(PWebRenderBridgeMsgStart, actor);
99
0
    return sendok__;
100
0
}
101
102
auto PWebRenderBridgeParent::RemoveManagee(
103
        int32_t aProtocolId,
104
        IProtocol* aListener) -> void
105
0
{
106
0
    FatalError("unreached");
107
0
    return;
108
0
}
109
110
auto PWebRenderBridgeParent::OnMessageReceived(const Message& msg__) -> PWebRenderBridgeParent::Result
111
0
{
112
0
    switch ((msg__).type()) {
113
0
    case PWebRenderBridge::Msg_NewCompositable__ID:
114
0
        {
115
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
116
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
117
0
            }
118
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_NewCompositable", OTHER);
119
0
120
0
            PickleIterator iter__(msg__);
121
0
            CompositableHandle handle;
122
0
            TextureInfo info;
123
0
124
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(handle)))))) {
125
0
                FatalError("Error deserializing 'CompositableHandle'");
126
0
                return MsgValueError;
127
0
            }
128
0
            // Sentinel = 'handle'
129
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 453975108)))) {
130
0
                mozilla::ipc::SentinelReadError("Error deserializing 'CompositableHandle'");
131
0
                return MsgValueError;
132
0
            }
133
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(info)))))) {
134
0
                FatalError("Error deserializing 'TextureInfo'");
135
0
                return MsgValueError;
136
0
            }
137
0
            // Sentinel = 'info'
138
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3750868832)))) {
139
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TextureInfo'");
140
0
                return MsgValueError;
141
0
            }
142
0
            (msg__).EndRead(iter__, (msg__).type());
143
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
144
0
                FatalError("Transition error");
145
0
                return MsgValueError;
146
0
            }
147
0
            if ((!(RecvNewCompositable(handle, info)))) {
148
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
149
0
                // Error handled in mozilla::ipc::IPCResult
150
0
                return MsgProcessingError;
151
0
            }
152
0
153
0
            return MsgProcessed;
154
0
        }
155
0
    case PWebRenderBridge::Msg_ReleaseCompositable__ID:
156
0
        {
157
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
158
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
159
0
            }
160
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_ReleaseCompositable", OTHER);
161
0
162
0
            PickleIterator iter__(msg__);
163
0
            CompositableHandle compositable;
164
0
165
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(compositable)))))) {
166
0
                FatalError("Error deserializing 'CompositableHandle'");
167
0
                return MsgValueError;
168
0
            }
169
0
            // Sentinel = 'compositable'
170
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 4031958248)))) {
171
0
                mozilla::ipc::SentinelReadError("Error deserializing 'CompositableHandle'");
172
0
                return MsgValueError;
173
0
            }
174
0
            (msg__).EndRead(iter__, (msg__).type());
175
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
176
0
                FatalError("Transition error");
177
0
                return MsgValueError;
178
0
            }
179
0
            if ((!(RecvReleaseCompositable(compositable)))) {
180
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
181
0
                // Error handled in mozilla::ipc::IPCResult
182
0
                return MsgProcessingError;
183
0
            }
184
0
185
0
            return MsgProcessed;
186
0
        }
187
0
    case PWebRenderBridge::Msg_DeleteCompositorAnimations__ID:
188
0
        {
189
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
190
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
191
0
            }
192
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_DeleteCompositorAnimations", OTHER);
193
0
194
0
            PickleIterator iter__(msg__);
195
0
            nsTArray<uint64_t> aIds;
196
0
197
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aIds)))))) {
198
0
                FatalError("Error deserializing 'nsTArray'");
199
0
                return MsgValueError;
200
0
            }
201
0
            // Sentinel = 'aIds'
202
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1964130745)))) {
203
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
204
0
                return MsgValueError;
205
0
            }
206
0
            (msg__).EndRead(iter__, (msg__).type());
207
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
208
0
                FatalError("Transition error");
209
0
                return MsgValueError;
210
0
            }
211
0
            if ((!(RecvDeleteCompositorAnimations(std::move(aIds))))) {
212
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
213
0
                // Error handled in mozilla::ipc::IPCResult
214
0
                return MsgProcessingError;
215
0
            }
216
0
217
0
            return MsgProcessed;
218
0
        }
219
0
    case PWebRenderBridge::Msg_SetDisplayList__ID:
220
0
        {
221
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
222
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
223
0
            }
224
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_SetDisplayList", OTHER);
225
0
226
0
            PickleIterator iter__(msg__);
227
0
            IntSize aSize;
228
0
            nsTArray<WebRenderParentCommand> commands;
229
0
            nsTArray<OpDestroy> toDestroy;
230
0
            uint64_t fwdTransactionId;
231
0
            TransactionId transactionId;
232
0
            LayoutSize aContentSize;
233
0
            ByteBuf aDL;
234
0
            BuiltDisplayListDescriptor aDLDesc;
235
0
            WebRenderScrollData aScrollData;
236
0
            nsTArray<OpUpdateResource> aResourceUpdates;
237
0
            nsTArray<RefCountedShmem> aSmallShmems;
238
0
            nsTArray<Shmem> aLargeShmems;
239
0
            IdNamespace aIdNamespace;
240
0
            bool containsSVGGroup;
241
0
            TimeStamp refreshStartTime;
242
0
            TimeStamp txnStartTime;
243
0
            TimeStamp fwdTime;
244
0
245
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aSize)))))) {
246
0
                FatalError("Error deserializing 'IntSize'");
247
0
                return MsgValueError;
248
0
            }
249
0
            // Sentinel = 'aSize'
250
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2556665555)))) {
251
0
                mozilla::ipc::SentinelReadError("Error deserializing 'IntSize'");
252
0
                return MsgValueError;
253
0
            }
254
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(commands)))))) {
255
0
                FatalError("Error deserializing 'nsTArray'");
256
0
                return MsgValueError;
257
0
            }
258
0
            // Sentinel = 'commands'
259
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 766311650)))) {
260
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
261
0
                return MsgValueError;
262
0
            }
263
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(toDestroy)))))) {
264
0
                FatalError("Error deserializing 'nsTArray'");
265
0
                return MsgValueError;
266
0
            }
267
0
            // Sentinel = 'toDestroy'
268
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 4183172130)))) {
269
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
270
0
                return MsgValueError;
271
0
            }
272
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(fwdTransactionId)))))) {
273
0
                FatalError("Error deserializing 'uint64_t'");
274
0
                return MsgValueError;
275
0
            }
276
0
            // Sentinel = 'fwdTransactionId'
277
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2023976742)))) {
278
0
                mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
279
0
                return MsgValueError;
280
0
            }
281
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(transactionId)))))) {
282
0
                FatalError("Error deserializing 'TransactionId'");
283
0
                return MsgValueError;
284
0
            }
285
0
            // Sentinel = 'transactionId'
286
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3330976378)))) {
287
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TransactionId'");
288
0
                return MsgValueError;
289
0
            }
290
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aContentSize)))))) {
291
0
                FatalError("Error deserializing 'LayoutSize'");
292
0
                return MsgValueError;
293
0
            }
294
0
            // Sentinel = 'aContentSize'
295
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2717297443)))) {
296
0
                mozilla::ipc::SentinelReadError("Error deserializing 'LayoutSize'");
297
0
                return MsgValueError;
298
0
            }
299
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aDL)))))) {
300
0
                FatalError("Error deserializing 'ByteBuf'");
301
0
                return MsgValueError;
302
0
            }
303
0
            // Sentinel = 'aDL'
304
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2732041978)))) {
305
0
                mozilla::ipc::SentinelReadError("Error deserializing 'ByteBuf'");
306
0
                return MsgValueError;
307
0
            }
308
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aDLDesc)))))) {
309
0
                FatalError("Error deserializing 'BuiltDisplayListDescriptor'");
310
0
                return MsgValueError;
311
0
            }
312
0
            // Sentinel = 'aDLDesc'
313
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 582673605)))) {
314
0
                mozilla::ipc::SentinelReadError("Error deserializing 'BuiltDisplayListDescriptor'");
315
0
                return MsgValueError;
316
0
            }
317
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aScrollData)))))) {
318
0
                FatalError("Error deserializing 'WebRenderScrollData'");
319
0
                return MsgValueError;
320
0
            }
321
0
            // Sentinel = 'aScrollData'
322
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3371626533)))) {
323
0
                mozilla::ipc::SentinelReadError("Error deserializing 'WebRenderScrollData'");
324
0
                return MsgValueError;
325
0
            }
326
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aResourceUpdates)))))) {
327
0
                FatalError("Error deserializing 'nsTArray'");
328
0
                return MsgValueError;
329
0
            }
330
0
            // Sentinel = 'aResourceUpdates'
331
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 166665069)))) {
332
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
333
0
                return MsgValueError;
334
0
            }
335
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aSmallShmems)))))) {
336
0
                FatalError("Error deserializing 'nsTArray'");
337
0
                return MsgValueError;
338
0
            }
339
0
            // Sentinel = 'aSmallShmems'
340
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2093690101)))) {
341
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
342
0
                return MsgValueError;
343
0
            }
344
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aLargeShmems)))))) {
345
0
                FatalError("Error deserializing 'nsTArray'");
346
0
                return MsgValueError;
347
0
            }
348
0
            // Sentinel = 'aLargeShmems'
349
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1347192857)))) {
350
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
351
0
                return MsgValueError;
352
0
            }
353
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aIdNamespace)))))) {
354
0
                FatalError("Error deserializing 'IdNamespace'");
355
0
                return MsgValueError;
356
0
            }
357
0
            // Sentinel = 'aIdNamespace'
358
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 4238309971)))) {
359
0
                mozilla::ipc::SentinelReadError("Error deserializing 'IdNamespace'");
360
0
                return MsgValueError;
361
0
            }
362
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(containsSVGGroup)))))) {
363
0
                FatalError("Error deserializing 'bool'");
364
0
                return MsgValueError;
365
0
            }
366
0
            // Sentinel = 'containsSVGGroup'
367
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 591467708)))) {
368
0
                mozilla::ipc::SentinelReadError("Error deserializing 'bool'");
369
0
                return MsgValueError;
370
0
            }
371
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(refreshStartTime)))))) {
372
0
                FatalError("Error deserializing 'TimeStamp'");
373
0
                return MsgValueError;
374
0
            }
375
0
            // Sentinel = 'refreshStartTime'
376
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1792425904)))) {
377
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
378
0
                return MsgValueError;
379
0
            }
380
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(txnStartTime)))))) {
381
0
                FatalError("Error deserializing 'TimeStamp'");
382
0
                return MsgValueError;
383
0
            }
384
0
            // Sentinel = 'txnStartTime'
385
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 6424537)))) {
386
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
387
0
                return MsgValueError;
388
0
            }
389
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(fwdTime)))))) {
390
0
                FatalError("Error deserializing 'TimeStamp'");
391
0
                return MsgValueError;
392
0
            }
393
0
            // Sentinel = 'fwdTime'
394
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1610637679)))) {
395
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
396
0
                return MsgValueError;
397
0
            }
398
0
            (msg__).EndRead(iter__, (msg__).type());
399
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
400
0
                FatalError("Transition error");
401
0
                return MsgValueError;
402
0
            }
403
0
            if ((!(RecvSetDisplayList(aSize, std::move(commands), std::move(toDestroy), fwdTransactionId, transactionId, aContentSize, std::move(aDL), aDLDesc, aScrollData, std::move(aResourceUpdates), std::move(aSmallShmems), std::move(aLargeShmems), aIdNamespace, containsSVGGroup, refreshStartTime, txnStartTime, fwdTime)))) {
404
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
405
0
                // Error handled in mozilla::ipc::IPCResult
406
0
                return MsgProcessingError;
407
0
            }
408
0
409
0
            return MsgProcessed;
410
0
        }
411
0
    case PWebRenderBridge::Msg_EmptyTransaction__ID:
412
0
        {
413
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
414
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
415
0
            }
416
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_EmptyTransaction", OTHER);
417
0
418
0
            PickleIterator iter__(msg__);
419
0
            FocusTarget focusTarget;
420
0
            ScrollUpdatesMap scrollUpdates;
421
0
            uint32_t aPaintSequenceNumber;
422
0
            nsTArray<WebRenderParentCommand> commands;
423
0
            nsTArray<OpDestroy> toDestroy;
424
0
            uint64_t fwdTransactionId;
425
0
            TransactionId transactionId;
426
0
            IdNamespace aIdNamespace;
427
0
            TimeStamp refreshStartTime;
428
0
            TimeStamp txnStartTime;
429
0
            TimeStamp fwdTime;
430
0
431
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(focusTarget)))))) {
432
0
                FatalError("Error deserializing 'FocusTarget'");
433
0
                return MsgValueError;
434
0
            }
435
0
            // Sentinel = 'focusTarget'
436
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2511236160)))) {
437
0
                mozilla::ipc::SentinelReadError("Error deserializing 'FocusTarget'");
438
0
                return MsgValueError;
439
0
            }
440
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(scrollUpdates)))))) {
441
0
                FatalError("Error deserializing 'ScrollUpdatesMap'");
442
0
                return MsgValueError;
443
0
            }
444
0
            // Sentinel = 'scrollUpdates'
445
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2478378126)))) {
446
0
                mozilla::ipc::SentinelReadError("Error deserializing 'ScrollUpdatesMap'");
447
0
                return MsgValueError;
448
0
            }
449
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aPaintSequenceNumber)))))) {
450
0
                FatalError("Error deserializing 'uint32_t'");
451
0
                return MsgValueError;
452
0
            }
453
0
            // Sentinel = 'aPaintSequenceNumber'
454
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2749736771)))) {
455
0
                mozilla::ipc::SentinelReadError("Error deserializing 'uint32_t'");
456
0
                return MsgValueError;
457
0
            }
458
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(commands)))))) {
459
0
                FatalError("Error deserializing 'nsTArray'");
460
0
                return MsgValueError;
461
0
            }
462
0
            // Sentinel = 'commands'
463
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 766311650)))) {
464
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
465
0
                return MsgValueError;
466
0
            }
467
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(toDestroy)))))) {
468
0
                FatalError("Error deserializing 'nsTArray'");
469
0
                return MsgValueError;
470
0
            }
471
0
            // Sentinel = 'toDestroy'
472
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 4183172130)))) {
473
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
474
0
                return MsgValueError;
475
0
            }
476
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(fwdTransactionId)))))) {
477
0
                FatalError("Error deserializing 'uint64_t'");
478
0
                return MsgValueError;
479
0
            }
480
0
            // Sentinel = 'fwdTransactionId'
481
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2023976742)))) {
482
0
                mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
483
0
                return MsgValueError;
484
0
            }
485
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(transactionId)))))) {
486
0
                FatalError("Error deserializing 'TransactionId'");
487
0
                return MsgValueError;
488
0
            }
489
0
            // Sentinel = 'transactionId'
490
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3330976378)))) {
491
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TransactionId'");
492
0
                return MsgValueError;
493
0
            }
494
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aIdNamespace)))))) {
495
0
                FatalError("Error deserializing 'IdNamespace'");
496
0
                return MsgValueError;
497
0
            }
498
0
            // Sentinel = 'aIdNamespace'
499
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 4238309971)))) {
500
0
                mozilla::ipc::SentinelReadError("Error deserializing 'IdNamespace'");
501
0
                return MsgValueError;
502
0
            }
503
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(refreshStartTime)))))) {
504
0
                FatalError("Error deserializing 'TimeStamp'");
505
0
                return MsgValueError;
506
0
            }
507
0
            // Sentinel = 'refreshStartTime'
508
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1792425904)))) {
509
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
510
0
                return MsgValueError;
511
0
            }
512
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(txnStartTime)))))) {
513
0
                FatalError("Error deserializing 'TimeStamp'");
514
0
                return MsgValueError;
515
0
            }
516
0
            // Sentinel = 'txnStartTime'
517
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 6424537)))) {
518
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
519
0
                return MsgValueError;
520
0
            }
521
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(fwdTime)))))) {
522
0
                FatalError("Error deserializing 'TimeStamp'");
523
0
                return MsgValueError;
524
0
            }
525
0
            // Sentinel = 'fwdTime'
526
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1610637679)))) {
527
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
528
0
                return MsgValueError;
529
0
            }
530
0
            (msg__).EndRead(iter__, (msg__).type());
531
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
532
0
                FatalError("Transition error");
533
0
                return MsgValueError;
534
0
            }
535
0
            if ((!(RecvEmptyTransaction(focusTarget, scrollUpdates, aPaintSequenceNumber, std::move(commands), std::move(toDestroy), fwdTransactionId, transactionId, aIdNamespace, refreshStartTime, txnStartTime, fwdTime)))) {
536
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
537
0
                // Error handled in mozilla::ipc::IPCResult
538
0
                return MsgProcessingError;
539
0
            }
540
0
541
0
            return MsgProcessed;
542
0
        }
543
0
    case PWebRenderBridge::Msg_SetFocusTarget__ID:
544
0
        {
545
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
546
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
547
0
            }
548
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_SetFocusTarget", OTHER);
549
0
550
0
            PickleIterator iter__(msg__);
551
0
            FocusTarget focusTarget;
552
0
553
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(focusTarget)))))) {
554
0
                FatalError("Error deserializing 'FocusTarget'");
555
0
                return MsgValueError;
556
0
            }
557
0
            // Sentinel = 'focusTarget'
558
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2511236160)))) {
559
0
                mozilla::ipc::SentinelReadError("Error deserializing 'FocusTarget'");
560
0
                return MsgValueError;
561
0
            }
562
0
            (msg__).EndRead(iter__, (msg__).type());
563
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
564
0
                FatalError("Transition error");
565
0
                return MsgValueError;
566
0
            }
567
0
            if ((!(RecvSetFocusTarget(focusTarget)))) {
568
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
569
0
                // Error handled in mozilla::ipc::IPCResult
570
0
                return MsgProcessingError;
571
0
            }
572
0
573
0
            return MsgProcessed;
574
0
        }
575
0
    case PWebRenderBridge::Msg_UpdateResources__ID:
576
0
        {
577
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
578
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
579
0
            }
580
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_UpdateResources", OTHER);
581
0
582
0
            PickleIterator iter__(msg__);
583
0
            nsTArray<OpUpdateResource> aResourceUpdates;
584
0
            nsTArray<RefCountedShmem> aSmallShmems;
585
0
            nsTArray<Shmem> aLargeShmems;
586
0
587
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aResourceUpdates)))))) {
588
0
                FatalError("Error deserializing 'nsTArray'");
589
0
                return MsgValueError;
590
0
            }
591
0
            // Sentinel = 'aResourceUpdates'
592
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 166665069)))) {
593
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
594
0
                return MsgValueError;
595
0
            }
596
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aSmallShmems)))))) {
597
0
                FatalError("Error deserializing 'nsTArray'");
598
0
                return MsgValueError;
599
0
            }
600
0
            // Sentinel = 'aSmallShmems'
601
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2093690101)))) {
602
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
603
0
                return MsgValueError;
604
0
            }
605
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aLargeShmems)))))) {
606
0
                FatalError("Error deserializing 'nsTArray'");
607
0
                return MsgValueError;
608
0
            }
609
0
            // Sentinel = 'aLargeShmems'
610
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1347192857)))) {
611
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
612
0
                return MsgValueError;
613
0
            }
614
0
            (msg__).EndRead(iter__, (msg__).type());
615
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
616
0
                FatalError("Transition error");
617
0
                return MsgValueError;
618
0
            }
619
0
            if ((!(RecvUpdateResources(std::move(aResourceUpdates), std::move(aSmallShmems), std::move(aLargeShmems))))) {
620
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
621
0
                // Error handled in mozilla::ipc::IPCResult
622
0
                return MsgProcessingError;
623
0
            }
624
0
625
0
            return MsgProcessed;
626
0
        }
627
0
    case PWebRenderBridge::Msg_ParentCommands__ID:
628
0
        {
629
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
630
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
631
0
            }
632
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_ParentCommands", OTHER);
633
0
634
0
            PickleIterator iter__(msg__);
635
0
            nsTArray<WebRenderParentCommand> commands;
636
0
637
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(commands)))))) {
638
0
                FatalError("Error deserializing 'nsTArray'");
639
0
                return MsgValueError;
640
0
            }
641
0
            // Sentinel = 'commands'
642
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 766311650)))) {
643
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
644
0
                return MsgValueError;
645
0
            }
646
0
            (msg__).EndRead(iter__, (msg__).type());
647
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
648
0
                FatalError("Transition error");
649
0
                return MsgValueError;
650
0
            }
651
0
            if ((!(RecvParentCommands(std::move(commands))))) {
652
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
653
0
                // Error handled in mozilla::ipc::IPCResult
654
0
                return MsgProcessingError;
655
0
            }
656
0
657
0
            return MsgProcessed;
658
0
        }
659
0
    case PWebRenderBridge::Msg_SetLayersObserverEpoch__ID:
660
0
        {
661
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
662
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
663
0
            }
664
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_SetLayersObserverEpoch", OTHER);
665
0
666
0
            PickleIterator iter__(msg__);
667
0
            LayersObserverEpoch childEpoch;
668
0
669
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(childEpoch)))))) {
670
0
                FatalError("Error deserializing 'LayersObserverEpoch'");
671
0
                return MsgValueError;
672
0
            }
673
0
            // Sentinel = 'childEpoch'
674
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3823372415)))) {
675
0
                mozilla::ipc::SentinelReadError("Error deserializing 'LayersObserverEpoch'");
676
0
                return MsgValueError;
677
0
            }
678
0
            (msg__).EndRead(iter__, (msg__).type());
679
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
680
0
                FatalError("Transition error");
681
0
                return MsgValueError;
682
0
            }
683
0
            if ((!(RecvSetLayersObserverEpoch(childEpoch)))) {
684
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
685
0
                // Error handled in mozilla::ipc::IPCResult
686
0
                return MsgProcessingError;
687
0
            }
688
0
689
0
            return MsgProcessed;
690
0
        }
691
0
    case PWebRenderBridge::Msg_ClearCachedResources__ID:
692
0
        {
693
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
694
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
695
0
            }
696
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_ClearCachedResources", OTHER);
697
0
698
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
699
0
                FatalError("Transition error");
700
0
                return MsgValueError;
701
0
            }
702
0
            if ((!(RecvClearCachedResources()))) {
703
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
704
0
                // Error handled in mozilla::ipc::IPCResult
705
0
                return MsgProcessingError;
706
0
            }
707
0
708
0
            return MsgProcessed;
709
0
        }
710
0
    case PWebRenderBridge::Msg_ScheduleComposite__ID:
711
0
        {
712
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
713
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
714
0
            }
715
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_ScheduleComposite", OTHER);
716
0
717
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
718
0
                FatalError("Transition error");
719
0
                return MsgValueError;
720
0
            }
721
0
            if ((!(RecvScheduleComposite()))) {
722
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
723
0
                // Error handled in mozilla::ipc::IPCResult
724
0
                return MsgProcessingError;
725
0
            }
726
0
727
0
            return MsgProcessed;
728
0
        }
729
0
    case PWebRenderBridge::Msg_Capture__ID:
730
0
        {
731
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
732
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
733
0
            }
734
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_Capture", OTHER);
735
0
736
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
737
0
                FatalError("Transition error");
738
0
                return MsgValueError;
739
0
            }
740
0
            if ((!(RecvCapture()))) {
741
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
742
0
                // Error handled in mozilla::ipc::IPCResult
743
0
                return MsgProcessingError;
744
0
            }
745
0
746
0
            return MsgProcessed;
747
0
        }
748
0
    case PWebRenderBridge::Msg_SetConfirmedTargetAPZC__ID:
749
0
        {
750
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
751
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
752
0
            }
753
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_SetConfirmedTargetAPZC", OTHER);
754
0
755
0
            PickleIterator iter__(msg__);
756
0
            uint64_t aInputBlockId;
757
0
            nsTArray<ScrollableLayerGuid> aTargets;
758
0
759
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aInputBlockId)))))) {
760
0
                FatalError("Error deserializing 'uint64_t'");
761
0
                return MsgValueError;
762
0
            }
763
0
            // Sentinel = 'aInputBlockId'
764
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3003300100)))) {
765
0
                mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
766
0
                return MsgValueError;
767
0
            }
768
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aTargets)))))) {
769
0
                FatalError("Error deserializing 'nsTArray'");
770
0
                return MsgValueError;
771
0
            }
772
0
            // Sentinel = 'aTargets'
773
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1782943901)))) {
774
0
                mozilla::ipc::SentinelReadError("Error deserializing 'nsTArray'");
775
0
                return MsgValueError;
776
0
            }
777
0
            (msg__).EndRead(iter__, (msg__).type());
778
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
779
0
                FatalError("Transition error");
780
0
                return MsgValueError;
781
0
            }
782
0
            if ((!(RecvSetConfirmedTargetAPZC(aInputBlockId, std::move(aTargets))))) {
783
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
784
0
                // Error handled in mozilla::ipc::IPCResult
785
0
                return MsgProcessingError;
786
0
            }
787
0
788
0
            return MsgProcessed;
789
0
        }
790
0
    case PWebRenderBridge::Msg_FlushApzRepaints__ID:
791
0
        {
792
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
793
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
794
0
            }
795
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_FlushApzRepaints", OTHER);
796
0
797
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
798
0
                FatalError("Transition error");
799
0
                return MsgValueError;
800
0
            }
801
0
            if ((!(RecvFlushApzRepaints()))) {
802
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
803
0
                // Error handled in mozilla::ipc::IPCResult
804
0
                return MsgProcessingError;
805
0
            }
806
0
807
0
            return MsgProcessed;
808
0
        }
809
0
    case PWebRenderBridge::Msg_Shutdown__ID:
810
0
        {
811
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
812
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
813
0
            }
814
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_Shutdown", OTHER);
815
0
816
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
817
0
                FatalError("Transition error");
818
0
                return MsgValueError;
819
0
            }
820
0
            if ((!(RecvShutdown()))) {
821
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
822
0
                // Error handled in mozilla::ipc::IPCResult
823
0
                return MsgProcessingError;
824
0
            }
825
0
826
0
            return MsgProcessed;
827
0
        }
828
0
    case PWebRenderBridge::Reply___delete____ID:
829
0
        {
830
0
            return MsgProcessed;
831
0
        }
832
0
    default:
833
0
        {
834
0
            return MsgNotKnown;
835
0
        }
836
0
    }
837
0
}
838
839
auto PWebRenderBridgeParent::OnMessageReceived(
840
        const Message& msg__,
841
        Message*& reply__) -> PWebRenderBridgeParent::Result
842
0
{
843
0
    switch ((msg__).type()) {
844
0
    case PWebRenderBridge::Msg_Create__ID:
845
0
        {
846
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
847
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
848
0
            }
849
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_Create", OTHER);
850
0
851
0
            PickleIterator iter__(msg__);
852
0
            IntSize aSize;
853
0
854
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aSize)))))) {
855
0
                FatalError("Error deserializing 'IntSize'");
856
0
                return MsgValueError;
857
0
            }
858
0
            // Sentinel = 'aSize'
859
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2556665555)))) {
860
0
                mozilla::ipc::SentinelReadError("Error deserializing 'IntSize'");
861
0
                return MsgValueError;
862
0
            }
863
0
            (msg__).EndRead(iter__, (msg__).type());
864
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
865
0
                FatalError("Transition error");
866
0
                return MsgValueError;
867
0
            }
868
0
            int32_t id__ = Id();
869
0
            if ((!(RecvCreate(aSize)))) {
870
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
871
0
                // Error handled in mozilla::ipc::IPCResult
872
0
                return MsgProcessingError;
873
0
            }
874
0
875
0
            reply__ = PWebRenderBridge::Reply_Create(id__);
876
0
877
0
878
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
879
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
880
0
            }
881
0
            return MsgProcessed;
882
0
        }
883
0
    case PWebRenderBridge::Msg_GetSnapshot__ID:
884
0
        {
885
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
886
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
887
0
            }
888
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_GetSnapshot", OTHER);
889
0
890
0
            PickleIterator iter__(msg__);
891
0
            PTextureParent* texture;
892
0
893
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(texture)))))) {
894
0
                FatalError("Error deserializing 'PTextureParent'");
895
0
                return MsgValueError;
896
0
            }
897
0
            if ((!((*((&(texture))))))) {
898
0
                FatalError("Error deserializing 'PTextureParent'");
899
0
                return MsgValueError;
900
0
            }
901
0
            // Sentinel = 'texture'
902
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3654462510)))) {
903
0
                mozilla::ipc::SentinelReadError("Error deserializing 'PTextureParent'");
904
0
                return MsgValueError;
905
0
            }
906
0
            (msg__).EndRead(iter__, (msg__).type());
907
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
908
0
                FatalError("Transition error");
909
0
                return MsgValueError;
910
0
            }
911
0
            int32_t id__ = Id();
912
0
            if ((!(RecvGetSnapshot(texture)))) {
913
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
914
0
                // Error handled in mozilla::ipc::IPCResult
915
0
                return MsgProcessingError;
916
0
            }
917
0
918
0
            reply__ = PWebRenderBridge::Reply_GetSnapshot(id__);
919
0
920
0
921
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
922
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
923
0
            }
924
0
            return MsgProcessed;
925
0
        }
926
0
    case PWebRenderBridge::Msg_SyncWithCompositor__ID:
927
0
        {
928
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
929
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
930
0
            }
931
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_SyncWithCompositor", OTHER);
932
0
933
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
934
0
                FatalError("Transition error");
935
0
                return MsgValueError;
936
0
            }
937
0
            int32_t id__ = Id();
938
0
            if ((!(RecvSyncWithCompositor()))) {
939
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
940
0
                // Error handled in mozilla::ipc::IPCResult
941
0
                return MsgProcessingError;
942
0
            }
943
0
944
0
            reply__ = PWebRenderBridge::Reply_SyncWithCompositor(id__);
945
0
946
0
947
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
948
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
949
0
            }
950
0
            return MsgProcessed;
951
0
        }
952
0
    case PWebRenderBridge::Msg_SetTestSampleTime__ID:
953
0
        {
954
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
955
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
956
0
            }
957
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_SetTestSampleTime", OTHER);
958
0
959
0
            PickleIterator iter__(msg__);
960
0
            TimeStamp sampleTime;
961
0
962
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(sampleTime)))))) {
963
0
                FatalError("Error deserializing 'TimeStamp'");
964
0
                return MsgValueError;
965
0
            }
966
0
            // Sentinel = 'sampleTime'
967
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2958171755)))) {
968
0
                mozilla::ipc::SentinelReadError("Error deserializing 'TimeStamp'");
969
0
                return MsgValueError;
970
0
            }
971
0
            (msg__).EndRead(iter__, (msg__).type());
972
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
973
0
                FatalError("Transition error");
974
0
                return MsgValueError;
975
0
            }
976
0
            int32_t id__ = Id();
977
0
            if ((!(RecvSetTestSampleTime(sampleTime)))) {
978
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
979
0
                // Error handled in mozilla::ipc::IPCResult
980
0
                return MsgProcessingError;
981
0
            }
982
0
983
0
            reply__ = PWebRenderBridge::Reply_SetTestSampleTime(id__);
984
0
985
0
986
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
987
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
988
0
            }
989
0
            return MsgProcessed;
990
0
        }
991
0
    case PWebRenderBridge::Msg_LeaveTestMode__ID:
992
0
        {
993
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
994
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
995
0
            }
996
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_LeaveTestMode", OTHER);
997
0
998
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
999
0
                FatalError("Transition error");
1000
0
                return MsgValueError;
1001
0
            }
1002
0
            int32_t id__ = Id();
1003
0
            if ((!(RecvLeaveTestMode()))) {
1004
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
1005
0
                // Error handled in mozilla::ipc::IPCResult
1006
0
                return MsgProcessingError;
1007
0
            }
1008
0
1009
0
            reply__ = PWebRenderBridge::Reply_LeaveTestMode(id__);
1010
0
1011
0
1012
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1013
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
1014
0
            }
1015
0
            return MsgProcessed;
1016
0
        }
1017
0
    case PWebRenderBridge::Msg_GetAnimationValue__ID:
1018
0
        {
1019
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1020
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
1021
0
            }
1022
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_GetAnimationValue", OTHER);
1023
0
1024
0
            PickleIterator iter__(msg__);
1025
0
            uint64_t aCompositorAnimationsId;
1026
0
1027
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(aCompositorAnimationsId)))))) {
1028
0
                FatalError("Error deserializing 'uint64_t'");
1029
0
                return MsgValueError;
1030
0
            }
1031
0
            // Sentinel = 'aCompositorAnimationsId'
1032
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 3630778879)))) {
1033
0
                mozilla::ipc::SentinelReadError("Error deserializing 'uint64_t'");
1034
0
                return MsgValueError;
1035
0
            }
1036
0
            (msg__).EndRead(iter__, (msg__).type());
1037
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
1038
0
                FatalError("Transition error");
1039
0
                return MsgValueError;
1040
0
            }
1041
0
            int32_t id__ = Id();
1042
0
            OMTAValue value;
1043
0
            if ((!(RecvGetAnimationValue(aCompositorAnimationsId, (&(value)))))) {
1044
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
1045
0
                // Error handled in mozilla::ipc::IPCResult
1046
0
                return MsgProcessingError;
1047
0
            }
1048
0
1049
0
            reply__ = PWebRenderBridge::Reply_GetAnimationValue(id__);
1050
0
1051
0
            WriteIPDLParam(reply__, this, value);
1052
0
            // Sentinel = 'value'
1053
0
            (reply__)->WriteSentinel(3456818542);
1054
0
1055
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1056
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
1057
0
            }
1058
0
            return MsgProcessed;
1059
0
        }
1060
0
    case PWebRenderBridge::Msg_SetAsyncScrollOffset__ID:
1061
0
        {
1062
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1063
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
1064
0
            }
1065
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_SetAsyncScrollOffset", OTHER);
1066
0
1067
0
            PickleIterator iter__(msg__);
1068
0
            ViewID scrollId;
1069
0
            float x;
1070
0
            float y;
1071
0
1072
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(scrollId)))))) {
1073
0
                FatalError("Error deserializing 'ViewID'");
1074
0
                return MsgValueError;
1075
0
            }
1076
0
            // Sentinel = 'scrollId'
1077
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1396311172)))) {
1078
0
                mozilla::ipc::SentinelReadError("Error deserializing 'ViewID'");
1079
0
                return MsgValueError;
1080
0
            }
1081
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(x)))))) {
1082
0
                FatalError("Error deserializing 'float'");
1083
0
                return MsgValueError;
1084
0
            }
1085
0
            // Sentinel = 'x'
1086
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2475144313)))) {
1087
0
                mozilla::ipc::SentinelReadError("Error deserializing 'float'");
1088
0
                return MsgValueError;
1089
0
            }
1090
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(y)))))) {
1091
0
                FatalError("Error deserializing 'float'");
1092
0
                return MsgValueError;
1093
0
            }
1094
0
            // Sentinel = 'y'
1095
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 2603144696)))) {
1096
0
                mozilla::ipc::SentinelReadError("Error deserializing 'float'");
1097
0
                return MsgValueError;
1098
0
            }
1099
0
            (msg__).EndRead(iter__, (msg__).type());
1100
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
1101
0
                FatalError("Transition error");
1102
0
                return MsgValueError;
1103
0
            }
1104
0
            int32_t id__ = Id();
1105
0
            if ((!(RecvSetAsyncScrollOffset(scrollId, x, y)))) {
1106
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
1107
0
                // Error handled in mozilla::ipc::IPCResult
1108
0
                return MsgProcessingError;
1109
0
            }
1110
0
1111
0
            reply__ = PWebRenderBridge::Reply_SetAsyncScrollOffset(id__);
1112
0
1113
0
1114
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1115
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
1116
0
            }
1117
0
            return MsgProcessed;
1118
0
        }
1119
0
    case PWebRenderBridge::Msg_SetAsyncZoom__ID:
1120
0
        {
1121
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1122
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
1123
0
            }
1124
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_SetAsyncZoom", OTHER);
1125
0
1126
0
            PickleIterator iter__(msg__);
1127
0
            ViewID scrollId;
1128
0
            float zoom;
1129
0
1130
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(scrollId)))))) {
1131
0
                FatalError("Error deserializing 'ViewID'");
1132
0
                return MsgValueError;
1133
0
            }
1134
0
            // Sentinel = 'scrollId'
1135
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1396311172)))) {
1136
0
                mozilla::ipc::SentinelReadError("Error deserializing 'ViewID'");
1137
0
                return MsgValueError;
1138
0
            }
1139
0
            if ((!(ReadIPDLParam((&(msg__)), (&(iter__)), this, (&(zoom)))))) {
1140
0
                FatalError("Error deserializing 'float'");
1141
0
                return MsgValueError;
1142
0
            }
1143
0
            // Sentinel = 'zoom'
1144
0
            if ((!(((&(msg__)))->ReadSentinel((&(iter__)), 1680696941)))) {
1145
0
                mozilla::ipc::SentinelReadError("Error deserializing 'float'");
1146
0
                return MsgValueError;
1147
0
            }
1148
0
            (msg__).EndRead(iter__, (msg__).type());
1149
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
1150
0
                FatalError("Transition error");
1151
0
                return MsgValueError;
1152
0
            }
1153
0
            int32_t id__ = Id();
1154
0
            if ((!(RecvSetAsyncZoom(scrollId, zoom)))) {
1155
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
1156
0
                // Error handled in mozilla::ipc::IPCResult
1157
0
                return MsgProcessingError;
1158
0
            }
1159
0
1160
0
            reply__ = PWebRenderBridge::Reply_SetAsyncZoom(id__);
1161
0
1162
0
1163
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1164
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
1165
0
            }
1166
0
            return MsgProcessed;
1167
0
        }
1168
0
    case PWebRenderBridge::Msg_GetAPZTestData__ID:
1169
0
        {
1170
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1171
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
1172
0
            }
1173
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_GetAPZTestData", OTHER);
1174
0
1175
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
1176
0
                FatalError("Transition error");
1177
0
                return MsgValueError;
1178
0
            }
1179
0
            int32_t id__ = Id();
1180
0
            APZTestData data;
1181
0
            if ((!(RecvGetAPZTestData((&(data)))))) {
1182
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
1183
0
                // Error handled in mozilla::ipc::IPCResult
1184
0
                return MsgProcessingError;
1185
0
            }
1186
0
1187
0
            reply__ = PWebRenderBridge::Reply_GetAPZTestData(id__);
1188
0
1189
0
            WriteIPDLParam(reply__, this, data);
1190
0
            // Sentinel = 'data'
1191
0
            (reply__)->WriteSentinel(843352540);
1192
0
1193
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1194
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
1195
0
            }
1196
0
            return MsgProcessed;
1197
0
        }
1198
0
    case PWebRenderBridge::Msg_ShutdownSync__ID:
1199
0
        {
1200
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1201
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Received ", ((&(msg__)))->type(), mozilla::ipc::MessageDirection::eReceiving);
1202
0
            }
1203
0
            AUTO_PROFILER_LABEL("PWebRenderBridge::Msg_ShutdownSync", OTHER);
1204
0
1205
0
            if ((!(StateTransition(false, (&(mLivenessState)))))) {
1206
0
                FatalError("Transition error");
1207
0
                return MsgValueError;
1208
0
            }
1209
0
            int32_t id__ = Id();
1210
0
            if ((!(RecvShutdownSync()))) {
1211
0
                mozilla::ipc::ProtocolErrorBreakpoint("Handler returned error code!");
1212
0
                // Error handled in mozilla::ipc::IPCResult
1213
0
                return MsgProcessingError;
1214
0
            }
1215
0
1216
0
            reply__ = PWebRenderBridge::Reply_ShutdownSync(id__);
1217
0
1218
0
1219
0
            if (mozilla::ipc::LoggingEnabledFor("PWebRenderBridgeParent")) {
1220
0
                mozilla::ipc::LogMessageForProtocol("PWebRenderBridgeParent", OtherPid(), "Sending reply ", (reply__)->type(), mozilla::ipc::MessageDirection::eSending);
1221
0
            }
1222
0
            return MsgProcessed;
1223
0
        }
1224
0
    default:
1225
0
        {
1226
0
            return MsgNotKnown;
1227
0
        }
1228
0
    }
1229
0
}
1230
1231
auto PWebRenderBridgeParent::OnCallReceived(
1232
        const Message& msg__,
1233
        Message*& reply__) -> PWebRenderBridgeParent::Result
1234
0
{
1235
0
    MOZ_ASSERT_UNREACHABLE("message protocol not supported");
1236
0
    return MsgNotKnown;
1237
0
}
1238
1239
auto PWebRenderBridgeParent::GetProtocolTypeId() -> int32_t
1240
0
{
1241
0
    return PWebRenderBridgeMsgStart;
1242
0
}
1243
1244
auto PWebRenderBridgeParent::DestroySubtree(ActorDestroyReason why) -> void
1245
0
{
1246
0
    // Unregister from our manager.
1247
0
    Unregister(Id());
1248
0
1249
0
    // Reject owning pending responses.
1250
0
    (GetIPCChannel())->RejectPendingResponsesForActor(this);
1251
0
1252
0
    // Finally, destroy "us".
1253
0
    ActorDestroy(why);
1254
0
}
1255
1256
auto PWebRenderBridgeParent::DeallocSubtree() -> void
1257
0
{
1258
0
}
1259
1260
1261
1262
} // namespace layers
1263
} // namespace mozilla
1264
namespace mozilla {
1265
namespace ipc {
1266
auto IPDLParamTraits<mozilla::layers::PWebRenderBridgeParent>::Write(
1267
        IPC::Message* aMsg,
1268
        mozilla::ipc::IProtocol* aActor,
1269
        const paramType& aVar) -> void
1270
0
{
1271
0
    int32_t id;
1272
0
    if ((!(aVar))) {
1273
0
        id = 0;
1274
0
    }
1275
0
    else {
1276
0
        id = (aVar)->Id();
1277
0
        if ((1) == (id)) {
1278
0
            (aActor)->FatalError("actor has been |delete|d");
1279
0
        }
1280
0
    }
1281
0
    WriteIPDLParam(aMsg, aActor, id);
1282
0
}
1283
1284
auto IPDLParamTraits<mozilla::layers::PWebRenderBridgeParent>::Read(
1285
        const IPC::Message* aMsg,
1286
        PickleIterator* aIter,
1287
        mozilla::ipc::IProtocol* aActor,
1288
        paramType* aVar) -> bool
1289
0
{
1290
0
    mozilla::Maybe<mozilla::ipc::IProtocol*> actor = (aActor)->ReadActor(aMsg, aIter, true, "PWebRenderBridge", PWebRenderBridgeMsgStart);
1291
0
    if ((actor).isNothing()) {
1292
0
        return false;
1293
0
    }
1294
0
1295
0
    (*(aVar)) = static_cast<mozilla::layers::PWebRenderBridgeParent*>((actor).value());
1296
0
    return true;
1297
0
}
1298
1299
} // namespace ipc
1300
} // namespace mozilla