1 : //
2 : // Automatically generated by ipdlc.
3 : // Edit at your own risk
4 : //
5 :
6 :
7 : #include "mozilla/dom/PBrowserParent.h"
8 :
9 : #include "mozilla/dom/PContentParent.h"
10 : #include "mozilla/dom/PContentDialogParent.h"
11 : #include "mozilla/ipc/PDocumentRendererParent.h"
12 : #include "mozilla/dom/PContentPermissionRequestParent.h"
13 : #include "mozilla/layout/PRenderFrameParent.h"
14 : #include "mozilla/docshell/POfflineCacheUpdateParent.h"
15 :
16 : typedef IPC::Message Message;
17 : typedef mozilla::ipc::RPCChannel Channel;
18 : typedef mozilla::ipc::RPCChannel::RPCListener ChannelListener;
19 : typedef base::ProcessHandle ProcessHandle;
20 : typedef mozilla::ipc::AsyncChannel AsyncChannel;
21 : typedef mozilla::ipc::SharedMemory SharedMemory;
22 : typedef mozilla::ipc::Trigger Trigger;
23 : typedef mozilla::ipc::ActorHandle ActorHandle;
24 : typedef mozilla::ipc::Shmem Shmem;
25 : typedef IPC::URI URI;
26 : typedef mozilla::WindowsHandle WindowsHandle;
27 : using mozilla::dom::PContentParent;
28 : using mozilla::dom::PContentDialogParent;
29 : using mozilla::ipc::PDocumentRendererParent;
30 : using mozilla::dom::PContentPermissionRequestParent;
31 : using mozilla::layout::PRenderFrameParent;
32 : using mozilla::docshell::POfflineCacheUpdateParent;
33 :
34 : namespace mozilla {
35 : namespace dom {
36 :
37 :
38 : bool
39 0 : PBrowserParent::RecvPContentPermissionRequestConstructor(
40 : PContentPermissionRequestParent* actor,
41 : const nsCString& aType,
42 : const URI& uri)
43 : {
44 0 : return true;
45 : }
46 :
47 : bool
48 0 : PBrowserParent::RecvPContentDialogConstructor(
49 : PContentDialogParent* actor,
50 : const PRUint32& aType,
51 : const nsCString& aName,
52 : const nsCString& aFeatures,
53 : const InfallibleTArray<PRInt32>& aIntParams,
54 : const InfallibleTArray<nsString>& aStringParams)
55 : {
56 0 : return true;
57 : }
58 :
59 : bool
60 0 : PBrowserParent::RecvPRenderFrameConstructor(PRenderFrameParent* actor)
61 : {
62 0 : return true;
63 : }
64 :
65 : bool
66 0 : PBrowserParent::RecvPOfflineCacheUpdateConstructor(
67 : POfflineCacheUpdateParent* actor,
68 : const URI& manifestURI,
69 : const URI& documentURI,
70 : const nsCString& clientID,
71 : const bool& stickDocument)
72 : {
73 0 : return true;
74 : }
75 :
76 : bool
77 0 : PBrowserParent::Recv__delete__()
78 : {
79 0 : return true;
80 : }
81 :
82 : void
83 0 : PBrowserParent::ActorDestroy(ActorDestroyReason why)
84 : {
85 0 : }
86 :
87 0 : PBrowserParent::PBrowserParent() :
88 : mId(0),
89 0 : mState(PBrowser::__Dead)
90 : {
91 0 : MOZ_COUNT_CTOR(PBrowserParent);
92 0 : }
93 :
94 0 : PBrowserParent::~PBrowserParent()
95 : {
96 0 : MOZ_COUNT_DTOR(PBrowserParent);
97 0 : }
98 :
99 : PContentParent*
100 0 : PBrowserParent::Manager()
101 : {
102 0 : return static_cast<PContentParent*>(mManager);
103 : }
104 :
105 : void
106 0 : PBrowserParent::ManagedPContentDialogParent(InfallibleTArray<PContentDialogParent*>& aArr) const
107 : {
108 0 : aArr = mManagedPContentDialogParent;
109 0 : }
110 :
111 : const InfallibleTArray<PContentDialogParent*>&
112 0 : PBrowserParent::ManagedPContentDialogParent() const
113 : {
114 0 : return mManagedPContentDialogParent;
115 : }
116 :
117 : void
118 0 : PBrowserParent::ManagedPDocumentRendererParent(InfallibleTArray<PDocumentRendererParent*>& aArr) const
119 : {
120 0 : aArr = mManagedPDocumentRendererParent;
121 0 : }
122 :
123 : const InfallibleTArray<PDocumentRendererParent*>&
124 0 : PBrowserParent::ManagedPDocumentRendererParent() const
125 : {
126 0 : return mManagedPDocumentRendererParent;
127 : }
128 :
129 : void
130 0 : PBrowserParent::ManagedPContentPermissionRequestParent(InfallibleTArray<PContentPermissionRequestParent*>& aArr) const
131 : {
132 0 : aArr = mManagedPContentPermissionRequestParent;
133 0 : }
134 :
135 : const InfallibleTArray<PContentPermissionRequestParent*>&
136 0 : PBrowserParent::ManagedPContentPermissionRequestParent() const
137 : {
138 0 : return mManagedPContentPermissionRequestParent;
139 : }
140 :
141 : void
142 0 : PBrowserParent::ManagedPRenderFrameParent(InfallibleTArray<PRenderFrameParent*>& aArr) const
143 : {
144 0 : aArr = mManagedPRenderFrameParent;
145 0 : }
146 :
147 : const InfallibleTArray<PRenderFrameParent*>&
148 0 : PBrowserParent::ManagedPRenderFrameParent() const
149 : {
150 0 : return mManagedPRenderFrameParent;
151 : }
152 :
153 : void
154 0 : PBrowserParent::ManagedPOfflineCacheUpdateParent(InfallibleTArray<POfflineCacheUpdateParent*>& aArr) const
155 : {
156 0 : aArr = mManagedPOfflineCacheUpdateParent;
157 0 : }
158 :
159 : const InfallibleTArray<POfflineCacheUpdateParent*>&
160 0 : PBrowserParent::ManagedPOfflineCacheUpdateParent() const
161 : {
162 0 : return mManagedPOfflineCacheUpdateParent;
163 : }
164 :
165 : PBrowser::State
166 0 : PBrowserParent::state()
167 : {
168 0 : return mState;
169 : }
170 :
171 : bool
172 0 : PBrowserParent::SendAsyncMessage(
173 : const nsString& aMessage,
174 : const nsString& aJSON)
175 : {
176 0 : PBrowser::Msg_AsyncMessage* __msg = new PBrowser::Msg_AsyncMessage();
177 :
178 0 : Write(aMessage, __msg);
179 0 : Write(aJSON, __msg);
180 :
181 0 : (__msg)->set_routing_id(mId);
182 :
183 :
184 :
185 0 : if (mozilla::ipc::LoggingEnabled()) {
186 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
187 : }
188 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_AsyncMessage__ID), (&(mState)))))) {
189 0 : NS_WARNING("bad state transition!");
190 : }
191 :
192 0 : bool __sendok = (mChannel)->Send(__msg);
193 0 : return __sendok;
194 : }
195 :
196 : bool
197 0 : PBrowserParent::SendShow(const nsIntSize& size)
198 : {
199 0 : PBrowser::Msg_Show* __msg = new PBrowser::Msg_Show();
200 :
201 0 : Write(size, __msg);
202 :
203 0 : (__msg)->set_routing_id(mId);
204 :
205 :
206 :
207 0 : if (mozilla::ipc::LoggingEnabled()) {
208 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
209 : }
210 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_Show__ID), (&(mState)))))) {
211 0 : NS_WARNING("bad state transition!");
212 : }
213 :
214 0 : bool __sendok = (mChannel)->Send(__msg);
215 0 : return __sendok;
216 : }
217 :
218 : bool
219 0 : PBrowserParent::SendLoadURL(const nsCString& uri)
220 : {
221 0 : PBrowser::Msg_LoadURL* __msg = new PBrowser::Msg_LoadURL();
222 :
223 0 : Write(uri, __msg);
224 :
225 0 : (__msg)->set_routing_id(mId);
226 :
227 :
228 :
229 0 : if (mozilla::ipc::LoggingEnabled()) {
230 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
231 : }
232 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_LoadURL__ID), (&(mState)))))) {
233 0 : NS_WARNING("bad state transition!");
234 : }
235 :
236 0 : bool __sendok = (mChannel)->Send(__msg);
237 0 : return __sendok;
238 : }
239 :
240 : bool
241 0 : PBrowserParent::SendUpdateDimensions(
242 : const nsRect& rect,
243 : const nsIntSize& size)
244 : {
245 0 : PBrowser::Msg_UpdateDimensions* __msg = new PBrowser::Msg_UpdateDimensions();
246 :
247 0 : Write(rect, __msg);
248 0 : Write(size, __msg);
249 :
250 0 : (__msg)->set_routing_id(mId);
251 :
252 :
253 :
254 0 : if (mozilla::ipc::LoggingEnabled()) {
255 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
256 : }
257 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_UpdateDimensions__ID), (&(mState)))))) {
258 0 : NS_WARNING("bad state transition!");
259 : }
260 :
261 0 : bool __sendok = (mChannel)->Send(__msg);
262 0 : return __sendok;
263 : }
264 :
265 : bool
266 0 : PBrowserParent::SendActivate()
267 : {
268 0 : PBrowser::Msg_Activate* __msg = new PBrowser::Msg_Activate();
269 :
270 :
271 0 : (__msg)->set_routing_id(mId);
272 :
273 :
274 :
275 0 : if (mozilla::ipc::LoggingEnabled()) {
276 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
277 : }
278 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_Activate__ID), (&(mState)))))) {
279 0 : NS_WARNING("bad state transition!");
280 : }
281 :
282 0 : bool __sendok = (mChannel)->Send(__msg);
283 0 : return __sendok;
284 : }
285 :
286 : bool
287 0 : PBrowserParent::SendDeactivate()
288 : {
289 0 : PBrowser::Msg_Deactivate* __msg = new PBrowser::Msg_Deactivate();
290 :
291 :
292 0 : (__msg)->set_routing_id(mId);
293 :
294 :
295 :
296 0 : if (mozilla::ipc::LoggingEnabled()) {
297 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
298 : }
299 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_Deactivate__ID), (&(mState)))))) {
300 0 : NS_WARNING("bad state transition!");
301 : }
302 :
303 0 : bool __sendok = (mChannel)->Send(__msg);
304 0 : return __sendok;
305 : }
306 :
307 : bool
308 0 : PBrowserParent::SendMouseEvent(
309 : const nsString& aType,
310 : const float& aX,
311 : const float& aY,
312 : const PRInt32& aButton,
313 : const PRInt32& aClickCount,
314 : const PRInt32& aModifiers,
315 : const bool& aIgnoreRootScrollFrame)
316 : {
317 0 : PBrowser::Msg_MouseEvent* __msg = new PBrowser::Msg_MouseEvent();
318 :
319 0 : Write(aType, __msg);
320 0 : Write(aX, __msg);
321 0 : Write(aY, __msg);
322 0 : Write(aButton, __msg);
323 0 : Write(aClickCount, __msg);
324 0 : Write(aModifiers, __msg);
325 0 : Write(aIgnoreRootScrollFrame, __msg);
326 :
327 0 : (__msg)->set_routing_id(mId);
328 :
329 :
330 :
331 0 : if (mozilla::ipc::LoggingEnabled()) {
332 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
333 : }
334 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_MouseEvent__ID), (&(mState)))))) {
335 0 : NS_WARNING("bad state transition!");
336 : }
337 :
338 0 : bool __sendok = (mChannel)->Send(__msg);
339 0 : return __sendok;
340 : }
341 :
342 : bool
343 0 : PBrowserParent::SendRealMouseEvent(const nsMouseEvent& event)
344 : {
345 0 : PBrowser::Msg_RealMouseEvent* __msg = new PBrowser::Msg_RealMouseEvent();
346 :
347 0 : Write(event, __msg);
348 :
349 0 : (__msg)->set_routing_id(mId);
350 :
351 :
352 :
353 0 : if (mozilla::ipc::LoggingEnabled()) {
354 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
355 : }
356 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_RealMouseEvent__ID), (&(mState)))))) {
357 0 : NS_WARNING("bad state transition!");
358 : }
359 :
360 0 : bool __sendok = (mChannel)->Send(__msg);
361 0 : return __sendok;
362 : }
363 :
364 : bool
365 0 : PBrowserParent::SendRealKeyEvent(const nsKeyEvent& event)
366 : {
367 0 : PBrowser::Msg_RealKeyEvent* __msg = new PBrowser::Msg_RealKeyEvent();
368 :
369 0 : Write(event, __msg);
370 :
371 0 : (__msg)->set_routing_id(mId);
372 :
373 :
374 :
375 0 : if (mozilla::ipc::LoggingEnabled()) {
376 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
377 : }
378 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_RealKeyEvent__ID), (&(mState)))))) {
379 0 : NS_WARNING("bad state transition!");
380 : }
381 :
382 0 : bool __sendok = (mChannel)->Send(__msg);
383 0 : return __sendok;
384 : }
385 :
386 : bool
387 0 : PBrowserParent::SendMouseScrollEvent(const nsMouseScrollEvent& event)
388 : {
389 0 : PBrowser::Msg_MouseScrollEvent* __msg = new PBrowser::Msg_MouseScrollEvent();
390 :
391 0 : Write(event, __msg);
392 :
393 0 : (__msg)->set_routing_id(mId);
394 :
395 :
396 :
397 0 : if (mozilla::ipc::LoggingEnabled()) {
398 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
399 : }
400 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_MouseScrollEvent__ID), (&(mState)))))) {
401 0 : NS_WARNING("bad state transition!");
402 : }
403 :
404 0 : bool __sendok = (mChannel)->Send(__msg);
405 0 : return __sendok;
406 : }
407 :
408 : bool
409 0 : PBrowserParent::SendKeyEvent(
410 : const nsString& aType,
411 : const PRInt32& aKeyCode,
412 : const PRInt32& aCharCode,
413 : const PRInt32& aModifiers,
414 : const bool& aPreventDefault)
415 : {
416 0 : PBrowser::Msg_KeyEvent* __msg = new PBrowser::Msg_KeyEvent();
417 :
418 0 : Write(aType, __msg);
419 0 : Write(aKeyCode, __msg);
420 0 : Write(aCharCode, __msg);
421 0 : Write(aModifiers, __msg);
422 0 : Write(aPreventDefault, __msg);
423 :
424 0 : (__msg)->set_routing_id(mId);
425 :
426 :
427 :
428 0 : if (mozilla::ipc::LoggingEnabled()) {
429 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
430 : }
431 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_KeyEvent__ID), (&(mState)))))) {
432 0 : NS_WARNING("bad state transition!");
433 : }
434 :
435 0 : bool __sendok = (mChannel)->Send(__msg);
436 0 : return __sendok;
437 : }
438 :
439 : bool
440 0 : PBrowserParent::SendCompositionEvent(const nsCompositionEvent& event)
441 : {
442 0 : PBrowser::Msg_CompositionEvent* __msg = new PBrowser::Msg_CompositionEvent();
443 :
444 0 : Write(event, __msg);
445 :
446 0 : (__msg)->set_routing_id(mId);
447 :
448 :
449 :
450 0 : if (mozilla::ipc::LoggingEnabled()) {
451 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
452 : }
453 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_CompositionEvent__ID), (&(mState)))))) {
454 0 : NS_WARNING("bad state transition!");
455 : }
456 :
457 0 : bool __sendok = (mChannel)->Send(__msg);
458 0 : return __sendok;
459 : }
460 :
461 : bool
462 0 : PBrowserParent::SendTextEvent(const nsTextEvent& event)
463 : {
464 0 : PBrowser::Msg_TextEvent* __msg = new PBrowser::Msg_TextEvent();
465 :
466 0 : Write(event, __msg);
467 :
468 0 : (__msg)->set_routing_id(mId);
469 :
470 :
471 :
472 0 : if (mozilla::ipc::LoggingEnabled()) {
473 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
474 : }
475 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_TextEvent__ID), (&(mState)))))) {
476 0 : NS_WARNING("bad state transition!");
477 : }
478 :
479 0 : bool __sendok = (mChannel)->Send(__msg);
480 0 : return __sendok;
481 : }
482 :
483 : bool
484 0 : PBrowserParent::SendSelectionEvent(const nsSelectionEvent& event)
485 : {
486 0 : PBrowser::Msg_SelectionEvent* __msg = new PBrowser::Msg_SelectionEvent();
487 :
488 0 : Write(event, __msg);
489 :
490 0 : (__msg)->set_routing_id(mId);
491 :
492 :
493 :
494 0 : if (mozilla::ipc::LoggingEnabled()) {
495 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
496 : }
497 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_SelectionEvent__ID), (&(mState)))))) {
498 0 : NS_WARNING("bad state transition!");
499 : }
500 :
501 0 : bool __sendok = (mChannel)->Send(__msg);
502 0 : return __sendok;
503 : }
504 :
505 : bool
506 0 : PBrowserParent::SendActivateFrameEvent(
507 : const nsString& aType,
508 : const bool& capture)
509 : {
510 0 : PBrowser::Msg_ActivateFrameEvent* __msg = new PBrowser::Msg_ActivateFrameEvent();
511 :
512 0 : Write(aType, __msg);
513 0 : Write(capture, __msg);
514 :
515 0 : (__msg)->set_routing_id(mId);
516 :
517 :
518 :
519 0 : if (mozilla::ipc::LoggingEnabled()) {
520 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
521 : }
522 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_ActivateFrameEvent__ID), (&(mState)))))) {
523 0 : NS_WARNING("bad state transition!");
524 : }
525 :
526 0 : bool __sendok = (mChannel)->Send(__msg);
527 0 : return __sendok;
528 : }
529 :
530 : bool
531 0 : PBrowserParent::SendLoadRemoteScript(const nsString& aURL)
532 : {
533 0 : PBrowser::Msg_LoadRemoteScript* __msg = new PBrowser::Msg_LoadRemoteScript();
534 :
535 0 : Write(aURL, __msg);
536 :
537 0 : (__msg)->set_routing_id(mId);
538 :
539 :
540 :
541 0 : if (mozilla::ipc::LoggingEnabled()) {
542 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
543 : }
544 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_LoadRemoteScript__ID), (&(mState)))))) {
545 0 : NS_WARNING("bad state transition!");
546 : }
547 :
548 0 : bool __sendok = (mChannel)->Send(__msg);
549 0 : return __sendok;
550 : }
551 :
552 : PDocumentRendererParent*
553 0 : PBrowserParent::SendPDocumentRendererConstructor(
554 : const nsRect& documentRect,
555 : const gfxMatrix& transform,
556 : const nsString& bgcolor,
557 : const PRUint32& renderFlags,
558 : const bool& flushLayout,
559 : const nsIntSize& renderSize)
560 : {
561 0 : return SendPDocumentRendererConstructor(AllocPDocumentRenderer(documentRect, transform, bgcolor, renderFlags, flushLayout, renderSize), documentRect, transform, bgcolor, renderFlags, flushLayout, renderSize);
562 : }
563 :
564 : PDocumentRendererParent*
565 0 : PBrowserParent::SendPDocumentRendererConstructor(
566 : PDocumentRendererParent* actor,
567 : const nsRect& documentRect,
568 : const gfxMatrix& transform,
569 : const nsString& bgcolor,
570 : const PRUint32& renderFlags,
571 : const bool& flushLayout,
572 : const nsIntSize& renderSize)
573 : {
574 0 : if ((!(actor))) {
575 0 : return 0;
576 : }
577 0 : (actor)->mId = Register(actor);
578 0 : (actor)->mManager = this;
579 0 : (actor)->mChannel = mChannel;
580 0 : (mManagedPDocumentRendererParent).InsertElementSorted(actor);
581 0 : (actor)->mState = mozilla::ipc::PDocumentRenderer::__Start;
582 :
583 0 : PBrowser::Msg_PDocumentRendererConstructor* __msg = new PBrowser::Msg_PDocumentRendererConstructor();
584 :
585 0 : Write(actor, __msg, false);
586 0 : Write(documentRect, __msg);
587 0 : Write(transform, __msg);
588 0 : Write(bgcolor, __msg);
589 0 : Write(renderFlags, __msg);
590 0 : Write(flushLayout, __msg);
591 0 : Write(renderSize, __msg);
592 :
593 0 : (__msg)->set_routing_id(mId);
594 :
595 :
596 0 : if (mozilla::ipc::LoggingEnabled()) {
597 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
598 : }
599 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_PDocumentRendererConstructor__ID), (&(mState)))))) {
600 0 : NS_WARNING("bad state transition!");
601 : }
602 :
603 0 : bool __sendok = (mChannel)->Send(__msg);
604 0 : if ((!(__sendok))) {
605 0 : (actor)->DestroySubtree(FailedConstructor);
606 0 : (actor)->DeallocSubtree();
607 0 : ((actor)->mManager)->RemoveManagee(PDocumentRendererMsgStart, actor);
608 0 : return 0;
609 : }
610 0 : return actor;
611 : }
612 :
613 : bool
614 0 : PBrowserParent::SendDestroy()
615 : {
616 0 : PBrowser::Msg_Destroy* __msg = new PBrowser::Msg_Destroy();
617 :
618 :
619 0 : (__msg)->set_routing_id(mId);
620 :
621 :
622 :
623 0 : if (mozilla::ipc::LoggingEnabled()) {
624 0 : (__msg)->Log("[PBrowserParent] Sending ", stderr);
625 : }
626 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Send, PBrowser::Msg_Destroy__ID), (&(mState)))))) {
627 0 : NS_WARNING("bad state transition!");
628 : }
629 :
630 0 : bool __sendok = (mChannel)->Send(__msg);
631 0 : return __sendok;
632 : }
633 :
634 : int32
635 0 : PBrowserParent::Register(ChannelListener* aRouted)
636 : {
637 0 : return (mManager)->Register(aRouted);
638 : }
639 :
640 : int32
641 0 : PBrowserParent::RegisterID(
642 : ChannelListener* aRouted,
643 : int32 aId)
644 : {
645 0 : return (mManager)->RegisterID(aRouted, aId);
646 : }
647 :
648 : ChannelListener*
649 0 : PBrowserParent::Lookup(int32 aId)
650 : {
651 0 : return (mManager)->Lookup(aId);
652 : }
653 :
654 : void
655 0 : PBrowserParent::Unregister(int32 aId)
656 : {
657 0 : return (mManager)->Unregister(aId);
658 : }
659 :
660 : void
661 0 : PBrowserParent::RemoveManagee(
662 : int32 aProtocolId,
663 : ChannelListener* aListener)
664 : {
665 0 : switch (aProtocolId) {
666 : case PContentDialogMsgStart:
667 : {
668 0 : PContentDialogParent* actor = static_cast<PContentDialogParent*>(aListener);
669 0 : NS_ABORT_IF_FALSE(((mManagedPContentDialogParent).NoIndex) != ((mManagedPContentDialogParent).BinaryIndexOf(actor)), "actor not managed by this!");
670 :
671 0 : (mManagedPContentDialogParent).RemoveElementSorted(actor);
672 0 : DeallocPContentDialog(actor);
673 0 : return;
674 : }
675 : case PDocumentRendererMsgStart:
676 : {
677 0 : PDocumentRendererParent* actor = static_cast<PDocumentRendererParent*>(aListener);
678 0 : NS_ABORT_IF_FALSE(((mManagedPDocumentRendererParent).NoIndex) != ((mManagedPDocumentRendererParent).BinaryIndexOf(actor)), "actor not managed by this!");
679 :
680 0 : (mManagedPDocumentRendererParent).RemoveElementSorted(actor);
681 0 : DeallocPDocumentRenderer(actor);
682 0 : return;
683 : }
684 : case PContentPermissionRequestMsgStart:
685 : {
686 0 : PContentPermissionRequestParent* actor = static_cast<PContentPermissionRequestParent*>(aListener);
687 0 : NS_ABORT_IF_FALSE(((mManagedPContentPermissionRequestParent).NoIndex) != ((mManagedPContentPermissionRequestParent).BinaryIndexOf(actor)), "actor not managed by this!");
688 :
689 0 : (mManagedPContentPermissionRequestParent).RemoveElementSorted(actor);
690 0 : DeallocPContentPermissionRequest(actor);
691 0 : return;
692 : }
693 : case PRenderFrameMsgStart:
694 : {
695 0 : PRenderFrameParent* actor = static_cast<PRenderFrameParent*>(aListener);
696 0 : NS_ABORT_IF_FALSE(((mManagedPRenderFrameParent).NoIndex) != ((mManagedPRenderFrameParent).BinaryIndexOf(actor)), "actor not managed by this!");
697 :
698 0 : (mManagedPRenderFrameParent).RemoveElementSorted(actor);
699 0 : DeallocPRenderFrame(actor);
700 0 : return;
701 : }
702 : case POfflineCacheUpdateMsgStart:
703 : {
704 0 : POfflineCacheUpdateParent* actor = static_cast<POfflineCacheUpdateParent*>(aListener);
705 0 : NS_ABORT_IF_FALSE(((mManagedPOfflineCacheUpdateParent).NoIndex) != ((mManagedPOfflineCacheUpdateParent).BinaryIndexOf(actor)), "actor not managed by this!");
706 :
707 0 : (mManagedPOfflineCacheUpdateParent).RemoveElementSorted(actor);
708 0 : DeallocPOfflineCacheUpdate(actor);
709 0 : return;
710 : }
711 : default:
712 : {
713 0 : NS_RUNTIMEABORT("unreached");
714 0 : return;
715 : }
716 : }
717 : }
718 :
719 : Shmem::SharedMemory*
720 0 : PBrowserParent::CreateSharedMemory(
721 : size_t aSize,
722 : Shmem::SharedMemory::SharedMemoryType type,
723 : bool unsafe,
724 : Shmem::id_t* aId)
725 : {
726 0 : return (mManager)->CreateSharedMemory(aSize, type, unsafe, aId);
727 : }
728 :
729 : bool
730 0 : PBrowserParent::AdoptSharedMemory(
731 : Shmem::SharedMemory* segment,
732 : Shmem::id_t* aId)
733 : {
734 0 : return (mManager)->AdoptSharedMemory(segment, aId);
735 : }
736 :
737 : Shmem::SharedMemory*
738 0 : PBrowserParent::LookupSharedMemory(Shmem::id_t aId)
739 : {
740 0 : return (mManager)->LookupSharedMemory(aId);
741 : }
742 :
743 : bool
744 0 : PBrowserParent::IsTrackingSharedMemory(Shmem::SharedMemory* segment)
745 : {
746 0 : return (mManager)->IsTrackingSharedMemory(segment);
747 : }
748 :
749 : bool
750 0 : PBrowserParent::DestroySharedMemory(Shmem& aShmem)
751 : {
752 0 : return (mManager)->DestroySharedMemory(aShmem);
753 : }
754 :
755 : ProcessHandle
756 0 : PBrowserParent::OtherProcess() const
757 : {
758 0 : return (mManager)->OtherProcess();
759 : }
760 :
761 : AsyncChannel*
762 0 : PBrowserParent::GetIPCChannel()
763 : {
764 0 : return mChannel;
765 : }
766 :
767 : PBrowserParent::Result
768 0 : PBrowserParent::OnMessageReceived(const Message& __msg)
769 : {
770 0 : switch ((__msg).type()) {
771 : case PBrowser::Msg_AsyncMessage__ID:
772 : {
773 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_AsyncMessage");
774 0 : if (mozilla::ipc::LoggingEnabled()) {
775 0 : (static_cast<const PBrowser::Msg_AsyncMessage*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
776 : }
777 :
778 0 : void* __iter = 0;
779 0 : nsString aMessage;
780 0 : nsString aJSON;
781 :
782 0 : if ((!(Read((&(aMessage)), (&(__msg)), (&(__iter)))))) {
783 0 : FatalError("error deserializing (better message TODO)");
784 0 : return MsgValueError;
785 : }
786 0 : if ((!(Read((&(aJSON)), (&(__msg)), (&(__iter)))))) {
787 0 : FatalError("error deserializing (better message TODO)");
788 0 : return MsgValueError;
789 : }
790 0 : (__msg).EndRead(__iter);
791 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_AsyncMessage__ID), (&(mState)))))) {
792 0 : NS_WARNING("bad state transition!");
793 : }
794 0 : if ((!(RecvAsyncMessage(aMessage, aJSON)))) {
795 0 : return MsgProcessingError;
796 : }
797 :
798 0 : return MsgProcessed;
799 : }
800 : case PBrowser::Msg_MoveFocus__ID:
801 : {
802 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_MoveFocus");
803 0 : if (mozilla::ipc::LoggingEnabled()) {
804 0 : (static_cast<const PBrowser::Msg_MoveFocus*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
805 : }
806 :
807 0 : void* __iter = 0;
808 : bool forward;
809 :
810 0 : if ((!(Read((&(forward)), (&(__msg)), (&(__iter)))))) {
811 0 : FatalError("error deserializing (better message TODO)");
812 0 : return MsgValueError;
813 : }
814 0 : (__msg).EndRead(__iter);
815 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_MoveFocus__ID), (&(mState)))))) {
816 0 : NS_WARNING("bad state transition!");
817 : }
818 0 : if ((!(RecvMoveFocus(forward)))) {
819 0 : return MsgProcessingError;
820 : }
821 :
822 0 : return MsgProcessed;
823 : }
824 : case PBrowser::Msg_Event__ID:
825 : {
826 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_Event");
827 0 : if (mozilla::ipc::LoggingEnabled()) {
828 0 : (static_cast<const PBrowser::Msg_Event*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
829 : }
830 :
831 0 : void* __iter = 0;
832 0 : RemoteDOMEvent aEvent;
833 :
834 0 : if ((!(Read((&(aEvent)), (&(__msg)), (&(__iter)))))) {
835 0 : FatalError("error deserializing (better message TODO)");
836 0 : return MsgValueError;
837 : }
838 0 : (__msg).EndRead(__iter);
839 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_Event__ID), (&(mState)))))) {
840 0 : NS_WARNING("bad state transition!");
841 : }
842 0 : if ((!(RecvEvent(aEvent)))) {
843 0 : return MsgProcessingError;
844 : }
845 :
846 0 : return MsgProcessed;
847 : }
848 : case PBrowser::Msg_NotifyIMETextChange__ID:
849 : {
850 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_NotifyIMETextChange");
851 0 : if (mozilla::ipc::LoggingEnabled()) {
852 0 : (static_cast<const PBrowser::Msg_NotifyIMETextChange*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
853 : }
854 :
855 0 : void* __iter = 0;
856 : PRUint32 offset;
857 : PRUint32 end;
858 : PRUint32 newEnd;
859 :
860 0 : if ((!(Read((&(offset)), (&(__msg)), (&(__iter)))))) {
861 0 : FatalError("error deserializing (better message TODO)");
862 0 : return MsgValueError;
863 : }
864 0 : if ((!(Read((&(end)), (&(__msg)), (&(__iter)))))) {
865 0 : FatalError("error deserializing (better message TODO)");
866 0 : return MsgValueError;
867 : }
868 0 : if ((!(Read((&(newEnd)), (&(__msg)), (&(__iter)))))) {
869 0 : FatalError("error deserializing (better message TODO)");
870 0 : return MsgValueError;
871 : }
872 0 : (__msg).EndRead(__iter);
873 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_NotifyIMETextChange__ID), (&(mState)))))) {
874 0 : NS_WARNING("bad state transition!");
875 : }
876 0 : if ((!(RecvNotifyIMETextChange(offset, end, newEnd)))) {
877 0 : return MsgProcessingError;
878 : }
879 :
880 0 : return MsgProcessed;
881 : }
882 : case PBrowser::Msg_NotifyIMESelection__ID:
883 : {
884 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_NotifyIMESelection");
885 0 : if (mozilla::ipc::LoggingEnabled()) {
886 0 : (static_cast<const PBrowser::Msg_NotifyIMESelection*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
887 : }
888 :
889 0 : void* __iter = 0;
890 : PRUint32 seqno;
891 : PRUint32 anchor;
892 : PRUint32 focus;
893 :
894 0 : if ((!(Read((&(seqno)), (&(__msg)), (&(__iter)))))) {
895 0 : FatalError("error deserializing (better message TODO)");
896 0 : return MsgValueError;
897 : }
898 0 : if ((!(Read((&(anchor)), (&(__msg)), (&(__iter)))))) {
899 0 : FatalError("error deserializing (better message TODO)");
900 0 : return MsgValueError;
901 : }
902 0 : if ((!(Read((&(focus)), (&(__msg)), (&(__iter)))))) {
903 0 : FatalError("error deserializing (better message TODO)");
904 0 : return MsgValueError;
905 : }
906 0 : (__msg).EndRead(__iter);
907 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_NotifyIMESelection__ID), (&(mState)))))) {
908 0 : NS_WARNING("bad state transition!");
909 : }
910 0 : if ((!(RecvNotifyIMESelection(seqno, anchor, focus)))) {
911 0 : return MsgProcessingError;
912 : }
913 :
914 0 : return MsgProcessed;
915 : }
916 : case PBrowser::Msg_NotifyIMETextHint__ID:
917 : {
918 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_NotifyIMETextHint");
919 0 : if (mozilla::ipc::LoggingEnabled()) {
920 0 : (static_cast<const PBrowser::Msg_NotifyIMETextHint*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
921 : }
922 :
923 0 : void* __iter = 0;
924 0 : nsString text;
925 :
926 0 : if ((!(Read((&(text)), (&(__msg)), (&(__iter)))))) {
927 0 : FatalError("error deserializing (better message TODO)");
928 0 : return MsgValueError;
929 : }
930 0 : (__msg).EndRead(__iter);
931 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_NotifyIMETextHint__ID), (&(mState)))))) {
932 0 : NS_WARNING("bad state transition!");
933 : }
934 0 : if ((!(RecvNotifyIMETextHint(text)))) {
935 0 : return MsgProcessingError;
936 : }
937 :
938 0 : return MsgProcessed;
939 : }
940 : case PBrowser::Msg_SetInputContext__ID:
941 : {
942 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_SetInputContext");
943 0 : if (mozilla::ipc::LoggingEnabled()) {
944 0 : (static_cast<const PBrowser::Msg_SetInputContext*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
945 : }
946 :
947 0 : void* __iter = 0;
948 : PRInt32 IMEEnabled;
949 : PRInt32 IMEOpen;
950 0 : nsString type;
951 0 : nsString actionHint;
952 : PRInt32 cause;
953 : PRInt32 focusChange;
954 :
955 0 : if ((!(Read((&(IMEEnabled)), (&(__msg)), (&(__iter)))))) {
956 0 : FatalError("error deserializing (better message TODO)");
957 0 : return MsgValueError;
958 : }
959 0 : if ((!(Read((&(IMEOpen)), (&(__msg)), (&(__iter)))))) {
960 0 : FatalError("error deserializing (better message TODO)");
961 0 : return MsgValueError;
962 : }
963 0 : if ((!(Read((&(type)), (&(__msg)), (&(__iter)))))) {
964 0 : FatalError("error deserializing (better message TODO)");
965 0 : return MsgValueError;
966 : }
967 0 : if ((!(Read((&(actionHint)), (&(__msg)), (&(__iter)))))) {
968 0 : FatalError("error deserializing (better message TODO)");
969 0 : return MsgValueError;
970 : }
971 0 : if ((!(Read((&(cause)), (&(__msg)), (&(__iter)))))) {
972 0 : FatalError("error deserializing (better message TODO)");
973 0 : return MsgValueError;
974 : }
975 0 : if ((!(Read((&(focusChange)), (&(__msg)), (&(__iter)))))) {
976 0 : FatalError("error deserializing (better message TODO)");
977 0 : return MsgValueError;
978 : }
979 0 : (__msg).EndRead(__iter);
980 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_SetInputContext__ID), (&(mState)))))) {
981 0 : NS_WARNING("bad state transition!");
982 : }
983 0 : if ((!(RecvSetInputContext(IMEEnabled, IMEOpen, type, actionHint, cause, focusChange)))) {
984 0 : return MsgProcessingError;
985 : }
986 :
987 0 : return MsgProcessed;
988 : }
989 : case PBrowser::Msg_SetCursor__ID:
990 : {
991 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_SetCursor");
992 0 : if (mozilla::ipc::LoggingEnabled()) {
993 0 : (static_cast<const PBrowser::Msg_SetCursor*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
994 : }
995 :
996 0 : void* __iter = 0;
997 : PRUint32 value;
998 :
999 0 : if ((!(Read((&(value)), (&(__msg)), (&(__iter)))))) {
1000 0 : FatalError("error deserializing (better message TODO)");
1001 0 : return MsgValueError;
1002 : }
1003 0 : (__msg).EndRead(__iter);
1004 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_SetCursor__ID), (&(mState)))))) {
1005 0 : NS_WARNING("bad state transition!");
1006 : }
1007 0 : if ((!(RecvSetCursor(value)))) {
1008 0 : return MsgProcessingError;
1009 : }
1010 :
1011 0 : return MsgProcessed;
1012 : }
1013 : case PBrowser::Msg_SetBackgroundColor__ID:
1014 : {
1015 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_SetBackgroundColor");
1016 0 : if (mozilla::ipc::LoggingEnabled()) {
1017 0 : (static_cast<const PBrowser::Msg_SetBackgroundColor*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1018 : }
1019 :
1020 0 : void* __iter = 0;
1021 : nscolor color;
1022 :
1023 0 : if ((!(Read((&(color)), (&(__msg)), (&(__iter)))))) {
1024 0 : FatalError("error deserializing (better message TODO)");
1025 0 : return MsgValueError;
1026 : }
1027 0 : (__msg).EndRead(__iter);
1028 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_SetBackgroundColor__ID), (&(mState)))))) {
1029 0 : NS_WARNING("bad state transition!");
1030 : }
1031 0 : if ((!(RecvSetBackgroundColor(color)))) {
1032 0 : return MsgProcessingError;
1033 : }
1034 :
1035 0 : return MsgProcessed;
1036 : }
1037 : case PBrowser::Msg_PContentPermissionRequestConstructor__ID:
1038 : {
1039 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_PContentPermissionRequestConstructor");
1040 0 : if (mozilla::ipc::LoggingEnabled()) {
1041 0 : (static_cast<const PBrowser::Msg_PContentPermissionRequestConstructor*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1042 : }
1043 :
1044 0 : void* __iter = 0;
1045 : ActorHandle __handle;
1046 : PContentPermissionRequestParent* actor;
1047 0 : nsCString aType;
1048 0 : URI uri;
1049 :
1050 0 : if ((!(Read((&(__handle)), (&(__msg)), (&(__iter)))))) {
1051 0 : FatalError("error deserializing (better message TODO)");
1052 0 : return MsgValueError;
1053 : }
1054 0 : if ((!(Read((&(aType)), (&(__msg)), (&(__iter)))))) {
1055 0 : FatalError("error deserializing (better message TODO)");
1056 0 : return MsgValueError;
1057 : }
1058 0 : if ((!(Read((&(uri)), (&(__msg)), (&(__iter)))))) {
1059 0 : FatalError("error deserializing (better message TODO)");
1060 0 : return MsgValueError;
1061 : }
1062 0 : (__msg).EndRead(__iter);
1063 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_PContentPermissionRequestConstructor__ID), (&(mState)))))) {
1064 0 : NS_WARNING("bad state transition!");
1065 : }
1066 0 : actor = AllocPContentPermissionRequest(aType, uri);
1067 0 : if ((!(actor))) {
1068 0 : return MsgValueError;
1069 : }
1070 0 : (actor)->mId = RegisterID(actor, (__handle).mId);
1071 0 : (actor)->mManager = this;
1072 0 : (actor)->mChannel = mChannel;
1073 0 : (mManagedPContentPermissionRequestParent).InsertElementSorted(actor);
1074 0 : (actor)->mState = mozilla::dom::PContentPermissionRequest::__Start;
1075 :
1076 0 : if ((!(RecvPContentPermissionRequestConstructor(actor, aType, uri)))) {
1077 0 : return MsgProcessingError;
1078 : }
1079 :
1080 0 : return MsgProcessed;
1081 : }
1082 : case PBrowser::Msg_PContentDialogConstructor__ID:
1083 : {
1084 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_PContentDialogConstructor");
1085 0 : if (mozilla::ipc::LoggingEnabled()) {
1086 0 : (static_cast<const PBrowser::Msg_PContentDialogConstructor*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1087 : }
1088 :
1089 0 : void* __iter = 0;
1090 : ActorHandle __handle;
1091 : PContentDialogParent* actor;
1092 : PRUint32 aType;
1093 0 : nsCString aName;
1094 0 : nsCString aFeatures;
1095 0 : InfallibleTArray<PRInt32> aIntParams;
1096 0 : InfallibleTArray<nsString> aStringParams;
1097 :
1098 0 : if ((!(Read((&(__handle)), (&(__msg)), (&(__iter)))))) {
1099 0 : FatalError("error deserializing (better message TODO)");
1100 0 : return MsgValueError;
1101 : }
1102 0 : if ((!(Read((&(aType)), (&(__msg)), (&(__iter)))))) {
1103 0 : FatalError("error deserializing (better message TODO)");
1104 0 : return MsgValueError;
1105 : }
1106 0 : if ((!(Read((&(aName)), (&(__msg)), (&(__iter)))))) {
1107 0 : FatalError("error deserializing (better message TODO)");
1108 0 : return MsgValueError;
1109 : }
1110 0 : if ((!(Read((&(aFeatures)), (&(__msg)), (&(__iter)))))) {
1111 0 : FatalError("error deserializing (better message TODO)");
1112 0 : return MsgValueError;
1113 : }
1114 0 : if ((!(Read((&(aIntParams)), (&(__msg)), (&(__iter)))))) {
1115 0 : FatalError("error deserializing (better message TODO)");
1116 0 : return MsgValueError;
1117 : }
1118 0 : if ((!(Read((&(aStringParams)), (&(__msg)), (&(__iter)))))) {
1119 0 : FatalError("error deserializing (better message TODO)");
1120 0 : return MsgValueError;
1121 : }
1122 0 : (__msg).EndRead(__iter);
1123 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_PContentDialogConstructor__ID), (&(mState)))))) {
1124 0 : NS_WARNING("bad state transition!");
1125 : }
1126 0 : actor = AllocPContentDialog(aType, aName, aFeatures, aIntParams, aStringParams);
1127 0 : if ((!(actor))) {
1128 0 : return MsgValueError;
1129 : }
1130 0 : (actor)->mId = RegisterID(actor, (__handle).mId);
1131 0 : (actor)->mManager = this;
1132 0 : (actor)->mChannel = mChannel;
1133 0 : (mManagedPContentDialogParent).InsertElementSorted(actor);
1134 0 : (actor)->mState = mozilla::dom::PContentDialog::__Start;
1135 :
1136 0 : if ((!(RecvPContentDialogConstructor(actor, aType, aName, aFeatures, aIntParams, aStringParams)))) {
1137 0 : return MsgProcessingError;
1138 : }
1139 :
1140 0 : return MsgProcessed;
1141 : }
1142 : case PBrowser::Msg_PRenderFrameConstructor__ID:
1143 : {
1144 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_PRenderFrameConstructor");
1145 0 : if (mozilla::ipc::LoggingEnabled()) {
1146 0 : (static_cast<const PBrowser::Msg_PRenderFrameConstructor*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1147 : }
1148 :
1149 0 : void* __iter = 0;
1150 : ActorHandle __handle;
1151 : PRenderFrameParent* actor;
1152 :
1153 0 : if ((!(Read((&(__handle)), (&(__msg)), (&(__iter)))))) {
1154 0 : FatalError("error deserializing (better message TODO)");
1155 0 : return MsgValueError;
1156 : }
1157 0 : (__msg).EndRead(__iter);
1158 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_PRenderFrameConstructor__ID), (&(mState)))))) {
1159 0 : NS_WARNING("bad state transition!");
1160 : }
1161 0 : actor = AllocPRenderFrame();
1162 0 : if ((!(actor))) {
1163 0 : return MsgValueError;
1164 : }
1165 0 : (actor)->mId = RegisterID(actor, (__handle).mId);
1166 0 : (actor)->mManager = this;
1167 0 : (actor)->mChannel = mChannel;
1168 0 : (mManagedPRenderFrameParent).InsertElementSorted(actor);
1169 0 : (actor)->mState = mozilla::layout::PRenderFrame::__Start;
1170 :
1171 0 : if ((!(RecvPRenderFrameConstructor(actor)))) {
1172 0 : return MsgProcessingError;
1173 : }
1174 :
1175 0 : return MsgProcessed;
1176 : }
1177 : case PBrowser::Msg_POfflineCacheUpdateConstructor__ID:
1178 : {
1179 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_POfflineCacheUpdateConstructor");
1180 0 : if (mozilla::ipc::LoggingEnabled()) {
1181 0 : (static_cast<const PBrowser::Msg_POfflineCacheUpdateConstructor*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1182 : }
1183 :
1184 0 : void* __iter = 0;
1185 : ActorHandle __handle;
1186 : POfflineCacheUpdateParent* actor;
1187 0 : URI manifestURI;
1188 0 : URI documentURI;
1189 0 : nsCString clientID;
1190 : bool stickDocument;
1191 :
1192 0 : if ((!(Read((&(__handle)), (&(__msg)), (&(__iter)))))) {
1193 0 : FatalError("error deserializing (better message TODO)");
1194 0 : return MsgValueError;
1195 : }
1196 0 : if ((!(Read((&(manifestURI)), (&(__msg)), (&(__iter)))))) {
1197 0 : FatalError("error deserializing (better message TODO)");
1198 0 : return MsgValueError;
1199 : }
1200 0 : if ((!(Read((&(documentURI)), (&(__msg)), (&(__iter)))))) {
1201 0 : FatalError("error deserializing (better message TODO)");
1202 0 : return MsgValueError;
1203 : }
1204 0 : if ((!(Read((&(clientID)), (&(__msg)), (&(__iter)))))) {
1205 0 : FatalError("error deserializing (better message TODO)");
1206 0 : return MsgValueError;
1207 : }
1208 0 : if ((!(Read((&(stickDocument)), (&(__msg)), (&(__iter)))))) {
1209 0 : FatalError("error deserializing (better message TODO)");
1210 0 : return MsgValueError;
1211 : }
1212 0 : (__msg).EndRead(__iter);
1213 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_POfflineCacheUpdateConstructor__ID), (&(mState)))))) {
1214 0 : NS_WARNING("bad state transition!");
1215 : }
1216 0 : actor = AllocPOfflineCacheUpdate(manifestURI, documentURI, clientID, stickDocument);
1217 0 : if ((!(actor))) {
1218 0 : return MsgValueError;
1219 : }
1220 0 : (actor)->mId = RegisterID(actor, (__handle).mId);
1221 0 : (actor)->mManager = this;
1222 0 : (actor)->mChannel = mChannel;
1223 0 : (mManagedPOfflineCacheUpdateParent).InsertElementSorted(actor);
1224 0 : (actor)->mState = mozilla::docshell::POfflineCacheUpdate::__Start;
1225 :
1226 0 : if ((!(RecvPOfflineCacheUpdateConstructor(actor, manifestURI, documentURI, clientID, stickDocument)))) {
1227 0 : return MsgProcessingError;
1228 : }
1229 :
1230 0 : return MsgProcessed;
1231 : }
1232 : case PBrowser::Msg___delete____ID:
1233 : {
1234 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg___delete__");
1235 0 : if (mozilla::ipc::LoggingEnabled()) {
1236 0 : (static_cast<const PBrowser::Msg___delete__*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1237 : }
1238 :
1239 0 : void* __iter = 0;
1240 : PBrowserParent* actor;
1241 :
1242 0 : if ((!(Read((&(actor)), (&(__msg)), (&(__iter)), false)))) {
1243 0 : FatalError("error deserializing (better message TODO)");
1244 0 : return MsgValueError;
1245 : }
1246 0 : (__msg).EndRead(__iter);
1247 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg___delete____ID), (&(mState)))))) {
1248 0 : NS_WARNING("bad state transition!");
1249 : }
1250 0 : if ((!(Recv__delete__()))) {
1251 0 : return MsgProcessingError;
1252 : }
1253 :
1254 0 : (actor)->DestroySubtree(Deletion);
1255 0 : (actor)->DeallocSubtree();
1256 0 : ((actor)->mManager)->RemoveManagee(PBrowserMsgStart, actor);
1257 :
1258 :
1259 0 : return MsgProcessed;
1260 : }
1261 : case PBrowser::Reply_PDocumentRendererConstructor__ID:
1262 : {
1263 0 : return MsgProcessed;
1264 : }
1265 : default:
1266 : {
1267 0 : return MsgNotKnown;
1268 : }
1269 : }
1270 : }
1271 :
1272 : PBrowserParent::Result
1273 0 : PBrowserParent::OnMessageReceived(
1274 : const Message& __msg,
1275 : Message*& __reply)
1276 : {
1277 0 : switch ((__msg).type()) {
1278 : case PBrowser::Msg_SyncMessage__ID:
1279 : {
1280 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_SyncMessage");
1281 0 : if (mozilla::ipc::LoggingEnabled()) {
1282 0 : (static_cast<const PBrowser::Msg_SyncMessage*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1283 : }
1284 :
1285 0 : void* __iter = 0;
1286 0 : nsString aMessage;
1287 0 : nsString aJSON;
1288 :
1289 0 : if ((!(Read((&(aMessage)), (&(__msg)), (&(__iter)))))) {
1290 0 : FatalError("error deserializing (better message TODO)");
1291 0 : return MsgValueError;
1292 : }
1293 0 : if ((!(Read((&(aJSON)), (&(__msg)), (&(__iter)))))) {
1294 0 : FatalError("error deserializing (better message TODO)");
1295 0 : return MsgValueError;
1296 : }
1297 0 : (__msg).EndRead(__iter);
1298 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_SyncMessage__ID), (&(mState)))))) {
1299 0 : NS_WARNING("bad state transition!");
1300 : }
1301 0 : InfallibleTArray<nsString> retval;
1302 0 : int32 __id = mId;
1303 0 : if ((!(RecvSyncMessage(aMessage, aJSON, (&(retval)))))) {
1304 0 : return MsgProcessingError;
1305 : }
1306 :
1307 0 : __reply = new PBrowser::Reply_SyncMessage();
1308 :
1309 0 : Write(retval, __reply);
1310 0 : (__reply)->set_routing_id(__id);
1311 0 : (__reply)->set_sync();
1312 0 : (__reply)->set_reply();
1313 :
1314 0 : if (mozilla::ipc::LoggingEnabled()) {
1315 0 : (static_cast<const PBrowser::Reply_SyncMessage*>(__reply))->Log("[PBrowserParent] Sending reply ", stderr);
1316 : }
1317 0 : return MsgProcessed;
1318 : }
1319 : case PBrowser::Msg_NotifyIMEFocus__ID:
1320 : {
1321 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_NotifyIMEFocus");
1322 0 : if (mozilla::ipc::LoggingEnabled()) {
1323 0 : (static_cast<const PBrowser::Msg_NotifyIMEFocus*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1324 : }
1325 :
1326 0 : void* __iter = 0;
1327 : bool focus;
1328 :
1329 0 : if ((!(Read((&(focus)), (&(__msg)), (&(__iter)))))) {
1330 0 : FatalError("error deserializing (better message TODO)");
1331 0 : return MsgValueError;
1332 : }
1333 0 : (__msg).EndRead(__iter);
1334 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_NotifyIMEFocus__ID), (&(mState)))))) {
1335 0 : NS_WARNING("bad state transition!");
1336 : }
1337 0 : nsIMEUpdatePreference preference;
1338 : PRUint32 seqno;
1339 0 : int32 __id = mId;
1340 0 : if ((!(RecvNotifyIMEFocus(focus, (&(preference)), (&(seqno)))))) {
1341 0 : return MsgProcessingError;
1342 : }
1343 :
1344 0 : __reply = new PBrowser::Reply_NotifyIMEFocus();
1345 :
1346 0 : Write(preference, __reply);
1347 0 : Write(seqno, __reply);
1348 0 : (__reply)->set_routing_id(__id);
1349 0 : (__reply)->set_sync();
1350 0 : (__reply)->set_reply();
1351 :
1352 0 : if (mozilla::ipc::LoggingEnabled()) {
1353 0 : (static_cast<const PBrowser::Reply_NotifyIMEFocus*>(__reply))->Log("[PBrowserParent] Sending reply ", stderr);
1354 : }
1355 0 : return MsgProcessed;
1356 : }
1357 : case PBrowser::Msg_EndIMEComposition__ID:
1358 : {
1359 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_EndIMEComposition");
1360 0 : if (mozilla::ipc::LoggingEnabled()) {
1361 0 : (static_cast<const PBrowser::Msg_EndIMEComposition*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1362 : }
1363 :
1364 0 : void* __iter = 0;
1365 : bool cancel;
1366 :
1367 0 : if ((!(Read((&(cancel)), (&(__msg)), (&(__iter)))))) {
1368 0 : FatalError("error deserializing (better message TODO)");
1369 0 : return MsgValueError;
1370 : }
1371 0 : (__msg).EndRead(__iter);
1372 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_EndIMEComposition__ID), (&(mState)))))) {
1373 0 : NS_WARNING("bad state transition!");
1374 : }
1375 0 : nsString composition;
1376 0 : int32 __id = mId;
1377 0 : if ((!(RecvEndIMEComposition(cancel, (&(composition)))))) {
1378 0 : return MsgProcessingError;
1379 : }
1380 :
1381 0 : __reply = new PBrowser::Reply_EndIMEComposition();
1382 :
1383 0 : Write(composition, __reply);
1384 0 : (__reply)->set_routing_id(__id);
1385 0 : (__reply)->set_sync();
1386 0 : (__reply)->set_reply();
1387 :
1388 0 : if (mozilla::ipc::LoggingEnabled()) {
1389 0 : (static_cast<const PBrowser::Reply_EndIMEComposition*>(__reply))->Log("[PBrowserParent] Sending reply ", stderr);
1390 : }
1391 0 : return MsgProcessed;
1392 : }
1393 : case PBrowser::Msg_GetInputContext__ID:
1394 : {
1395 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_GetInputContext");
1396 0 : if (mozilla::ipc::LoggingEnabled()) {
1397 0 : (static_cast<const PBrowser::Msg_GetInputContext*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1398 : }
1399 :
1400 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_GetInputContext__ID), (&(mState)))))) {
1401 0 : NS_WARNING("bad state transition!");
1402 : }
1403 : PRInt32 IMEEnabled;
1404 : PRInt32 IMEOpen;
1405 0 : int32 __id = mId;
1406 0 : if ((!(RecvGetInputContext((&(IMEEnabled)), (&(IMEOpen)))))) {
1407 0 : return MsgProcessingError;
1408 : }
1409 :
1410 0 : __reply = new PBrowser::Reply_GetInputContext();
1411 :
1412 0 : Write(IMEEnabled, __reply);
1413 0 : Write(IMEOpen, __reply);
1414 0 : (__reply)->set_routing_id(__id);
1415 0 : (__reply)->set_sync();
1416 0 : (__reply)->set_reply();
1417 :
1418 0 : if (mozilla::ipc::LoggingEnabled()) {
1419 0 : (static_cast<const PBrowser::Reply_GetInputContext*>(__reply))->Log("[PBrowserParent] Sending reply ", stderr);
1420 : }
1421 0 : return MsgProcessed;
1422 : }
1423 : case PBrowser::Msg_GetDPI__ID:
1424 : {
1425 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_GetDPI");
1426 0 : if (mozilla::ipc::LoggingEnabled()) {
1427 0 : (static_cast<const PBrowser::Msg_GetDPI*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1428 : }
1429 :
1430 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_GetDPI__ID), (&(mState)))))) {
1431 0 : NS_WARNING("bad state transition!");
1432 : }
1433 : float value;
1434 0 : int32 __id = mId;
1435 0 : if ((!(RecvGetDPI((&(value)))))) {
1436 0 : return MsgProcessingError;
1437 : }
1438 :
1439 0 : __reply = new PBrowser::Reply_GetDPI();
1440 :
1441 0 : Write(value, __reply);
1442 0 : (__reply)->set_routing_id(__id);
1443 0 : (__reply)->set_sync();
1444 0 : (__reply)->set_reply();
1445 :
1446 0 : if (mozilla::ipc::LoggingEnabled()) {
1447 0 : (static_cast<const PBrowser::Reply_GetDPI*>(__reply))->Log("[PBrowserParent] Sending reply ", stderr);
1448 : }
1449 0 : return MsgProcessed;
1450 : }
1451 : case PBrowser::Msg_GetWidgetNativeData__ID:
1452 : {
1453 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_GetWidgetNativeData");
1454 0 : if (mozilla::ipc::LoggingEnabled()) {
1455 0 : (static_cast<const PBrowser::Msg_GetWidgetNativeData*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1456 : }
1457 :
1458 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_GetWidgetNativeData__ID), (&(mState)))))) {
1459 0 : NS_WARNING("bad state transition!");
1460 : }
1461 : WindowsHandle value;
1462 0 : int32 __id = mId;
1463 0 : if ((!(RecvGetWidgetNativeData((&(value)))))) {
1464 0 : return MsgProcessingError;
1465 : }
1466 :
1467 0 : __reply = new PBrowser::Reply_GetWidgetNativeData();
1468 :
1469 0 : Write(value, __reply);
1470 0 : (__reply)->set_routing_id(__id);
1471 0 : (__reply)->set_sync();
1472 0 : (__reply)->set_reply();
1473 :
1474 0 : if (mozilla::ipc::LoggingEnabled()) {
1475 0 : (static_cast<const PBrowser::Reply_GetWidgetNativeData*>(__reply))->Log("[PBrowserParent] Sending reply ", stderr);
1476 : }
1477 0 : return MsgProcessed;
1478 : }
1479 : default:
1480 : {
1481 0 : return MsgNotKnown;
1482 : }
1483 : }
1484 : }
1485 :
1486 : PBrowserParent::Result
1487 0 : PBrowserParent::OnCallReceived(
1488 : const Message& __msg,
1489 : Message*& __reply)
1490 : {
1491 0 : switch ((__msg).type()) {
1492 : case PBrowser::Msg_CreateWindow__ID:
1493 : {
1494 0 : (const_cast<Message&>(__msg)).set_name("PBrowser::Msg_CreateWindow");
1495 0 : if (mozilla::ipc::LoggingEnabled()) {
1496 0 : (static_cast<const PBrowser::Msg_CreateWindow*>((&(__msg))))->Log("[PBrowserParent] Received ", stderr);
1497 : }
1498 :
1499 0 : if ((!(PBrowser::Transition(mState, Trigger(Trigger::Recv, PBrowser::Msg_CreateWindow__ID), (&(mState)))))) {
1500 0 : NS_WARNING("bad state transition!");
1501 : }
1502 : PBrowserParent* window;
1503 0 : int32 __id = mId;
1504 0 : if ((!(AnswerCreateWindow((&(window)))))) {
1505 0 : return MsgProcessingError;
1506 : }
1507 :
1508 0 : __reply = new PBrowser::Reply_CreateWindow();
1509 :
1510 0 : Write(window, __reply, false);
1511 0 : (__reply)->set_routing_id(__id);
1512 0 : (__reply)->set_rpc();
1513 0 : (__reply)->set_reply();
1514 :
1515 0 : if (mozilla::ipc::LoggingEnabled()) {
1516 0 : (static_cast<const PBrowser::Reply_CreateWindow*>(__reply))->Log("[PBrowserParent] Sending reply ", stderr);
1517 : }
1518 0 : return MsgProcessed;
1519 : }
1520 : default:
1521 : {
1522 0 : return MsgNotKnown;
1523 : }
1524 : }
1525 : }
1526 :
1527 : void
1528 0 : PBrowserParent::OnProcessingError(Result code)
1529 : {
1530 0 : NS_RUNTIMEABORT("`OnProcessingError' called on non-toplevel actor");
1531 0 : }
1532 :
1533 : bool
1534 0 : PBrowserParent::OnReplyTimeout()
1535 : {
1536 0 : NS_RUNTIMEABORT("`OnReplyTimeout' called on non-toplevel actor");
1537 0 : return false;
1538 : }
1539 :
1540 : void
1541 0 : PBrowserParent::OnChannelClose()
1542 : {
1543 0 : NS_RUNTIMEABORT("`OnClose' called on non-toplevel actor");
1544 0 : }
1545 :
1546 : void
1547 0 : PBrowserParent::OnChannelError()
1548 : {
1549 0 : NS_RUNTIMEABORT("`OnError' called on non-toplevel actor");
1550 0 : }
1551 :
1552 : void
1553 0 : PBrowserParent::OnChannelConnected(int32 pid)
1554 : {
1555 0 : NS_RUNTIMEABORT("'OnConnected' called on non-toplevel actor");
1556 0 : }
1557 :
1558 : bool
1559 0 : PBrowserParent::AllocShmem(
1560 : size_t aSize,
1561 : Shmem::SharedMemory::SharedMemoryType aType,
1562 : Shmem* aMem)
1563 : {
1564 : Shmem::id_t aId;
1565 0 : nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, false, (&(aId))));
1566 0 : if ((!(rawmem))) {
1567 0 : return false;
1568 : }
1569 :
1570 0 : (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
1571 0 : return true;
1572 : }
1573 :
1574 : bool
1575 0 : PBrowserParent::AllocUnsafeShmem(
1576 : size_t aSize,
1577 : Shmem::SharedMemory::SharedMemoryType aType,
1578 : Shmem* aMem)
1579 : {
1580 : Shmem::id_t aId;
1581 0 : nsAutoPtr<Shmem::SharedMemory> rawmem(CreateSharedMemory(aSize, aType, true, (&(aId))));
1582 0 : if ((!(rawmem))) {
1583 0 : return false;
1584 : }
1585 :
1586 0 : (*(aMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), (rawmem).forget(), aId);
1587 0 : return true;
1588 : }
1589 :
1590 : bool
1591 0 : PBrowserParent::AdoptShmem(
1592 : Shmem& aMem,
1593 : Shmem* aOutMem)
1594 : {
1595 0 : Shmem::SharedMemory* rawmem = (aMem).Segment(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
1596 0 : if (((!(rawmem))) || (IsTrackingSharedMemory(rawmem))) {
1597 0 : NS_RUNTIMEABORT("bad Shmem");
1598 : }
1599 :
1600 : Shmem::id_t aId;
1601 0 : if ((!(AdoptSharedMemory(rawmem, (&(aId)))))) {
1602 0 : return false;
1603 : }
1604 :
1605 0 : (*(aOutMem)) = Shmem(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead(), rawmem, aId);
1606 0 : return true;
1607 : }
1608 :
1609 : bool
1610 0 : PBrowserParent::DeallocShmem(Shmem& aMem)
1611 : {
1612 0 : bool ok = DestroySharedMemory(aMem);
1613 0 : (aMem).forget(Shmem::IHadBetterBeIPDLCodeCallingThis_OtherwiseIAmADoodyhead());
1614 0 : return ok;
1615 : }
1616 :
1617 : void
1618 0 : PBrowserParent::FatalError(const char* const msg) const
1619 : {
1620 : // Virtual method to prevent inlining.
1621 : // This give us better error reporting.
1622 : // See bug 589371
1623 :
1624 0 : NS_ERROR("IPDL error:");
1625 0 : NS_ERROR(msg);
1626 :
1627 0 : NS_ERROR("[PBrowserParent] killing child side as a result");
1628 :
1629 0 : if ((!(base::KillProcess(OtherProcess(), base::PROCESS_END_KILLED_BY_USER, false)))) {
1630 0 : NS_ERROR(" may have failed to kill child!");
1631 : }
1632 0 : }
1633 :
1634 : void
1635 0 : PBrowserParent::DestroySubtree(ActorDestroyReason why)
1636 : {
1637 : // Unregister from our manager.
1638 0 : Unregister(mId);
1639 0 : mId = 1;
1640 :
1641 0 : ActorDestroyReason subtreewhy = (((why) == (Deletion)) || ((why) == (FailedConstructor)) ? AncestorDeletion : why);
1642 :
1643 : {
1644 : // Recursively shutting down PContentDialog kids
1645 0 : InfallibleTArray<PContentDialogParent*> kids = mManagedPContentDialogParent;
1646 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1647 0 : (kids[i])->DestroySubtree(subtreewhy);
1648 : }
1649 : }
1650 : {
1651 : // Recursively shutting down PDocumentRenderer kids
1652 0 : InfallibleTArray<PDocumentRendererParent*> kids = mManagedPDocumentRendererParent;
1653 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1654 0 : (kids[i])->DestroySubtree(subtreewhy);
1655 : }
1656 : }
1657 : {
1658 : // Recursively shutting down PContentPermissionRequest kids
1659 0 : InfallibleTArray<PContentPermissionRequestParent*> kids = mManagedPContentPermissionRequestParent;
1660 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1661 0 : (kids[i])->DestroySubtree(subtreewhy);
1662 : }
1663 : }
1664 : {
1665 : // Recursively shutting down PRenderFrame kids
1666 0 : InfallibleTArray<PRenderFrameParent*> kids = mManagedPRenderFrameParent;
1667 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1668 0 : (kids[i])->DestroySubtree(subtreewhy);
1669 : }
1670 : }
1671 : {
1672 : // Recursively shutting down POfflineCacheUpdate kids
1673 0 : InfallibleTArray<POfflineCacheUpdateParent*> kids = mManagedPOfflineCacheUpdateParent;
1674 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1675 0 : (kids[i])->DestroySubtree(subtreewhy);
1676 : }
1677 : }
1678 :
1679 : // Finally, destroy "us".
1680 0 : ActorDestroy(why);
1681 0 : }
1682 :
1683 : void
1684 0 : PBrowserParent::DeallocSubtree()
1685 : {
1686 : {
1687 : // Recursively deleting PContentDialog kids
1688 0 : InfallibleTArray<PContentDialogParent*>& kids = mManagedPContentDialogParent;
1689 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1690 0 : (kids[i])->DeallocSubtree();
1691 : }
1692 :
1693 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1694 0 : DeallocPContentDialog(kids[i]);
1695 : }
1696 0 : (mManagedPContentDialogParent).Clear();
1697 : }
1698 : {
1699 : // Recursively deleting PDocumentRenderer kids
1700 0 : InfallibleTArray<PDocumentRendererParent*>& kids = mManagedPDocumentRendererParent;
1701 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1702 0 : (kids[i])->DeallocSubtree();
1703 : }
1704 :
1705 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1706 0 : DeallocPDocumentRenderer(kids[i]);
1707 : }
1708 0 : (mManagedPDocumentRendererParent).Clear();
1709 : }
1710 : {
1711 : // Recursively deleting PContentPermissionRequest kids
1712 0 : InfallibleTArray<PContentPermissionRequestParent*>& kids = mManagedPContentPermissionRequestParent;
1713 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1714 0 : (kids[i])->DeallocSubtree();
1715 : }
1716 :
1717 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1718 0 : DeallocPContentPermissionRequest(kids[i]);
1719 : }
1720 0 : (mManagedPContentPermissionRequestParent).Clear();
1721 : }
1722 : {
1723 : // Recursively deleting PRenderFrame kids
1724 0 : InfallibleTArray<PRenderFrameParent*>& kids = mManagedPRenderFrameParent;
1725 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1726 0 : (kids[i])->DeallocSubtree();
1727 : }
1728 :
1729 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1730 0 : DeallocPRenderFrame(kids[i]);
1731 : }
1732 0 : (mManagedPRenderFrameParent).Clear();
1733 : }
1734 : {
1735 : // Recursively deleting POfflineCacheUpdate kids
1736 0 : InfallibleTArray<POfflineCacheUpdateParent*>& kids = mManagedPOfflineCacheUpdateParent;
1737 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1738 0 : (kids[i])->DeallocSubtree();
1739 : }
1740 :
1741 0 : for (uint32 i = 0; (i) < ((kids).Length()); (++(i))) {
1742 0 : DeallocPOfflineCacheUpdate(kids[i]);
1743 : }
1744 0 : (mManagedPOfflineCacheUpdateParent).Clear();
1745 : }
1746 0 : }
1747 :
1748 : void
1749 0 : PBrowserParent::Write(
1750 : PBrowserParent* __v,
1751 : Message* __msg,
1752 : bool __nullable)
1753 : {
1754 : int32 id;
1755 0 : if ((!(__v))) {
1756 0 : if ((!(__nullable))) {
1757 0 : NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
1758 : }
1759 0 : id = 0;
1760 : }
1761 : else {
1762 0 : id = (__v)->mId;
1763 0 : if ((1) == (id)) {
1764 0 : NS_RUNTIMEABORT("actor has been |delete|d");
1765 : }
1766 : }
1767 :
1768 0 : Write(id, __msg);
1769 0 : }
1770 :
1771 : bool
1772 0 : PBrowserParent::Read(
1773 : PBrowserParent** __v,
1774 : const Message* __msg,
1775 : void** __iter,
1776 : bool __nullable)
1777 : {
1778 : int32 id;
1779 0 : if ((!(Read((&(id)), __msg, __iter)))) {
1780 0 : return false;
1781 : }
1782 0 : if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
1783 0 : return false;
1784 : }
1785 :
1786 0 : if ((0) == (id)) {
1787 0 : (*(__v)) = 0;
1788 : }
1789 : else {
1790 0 : (*(__v)) = static_cast<PBrowserParent*>(Lookup(id));
1791 0 : if ((!((*(__v))))) {
1792 0 : return false;
1793 : }
1794 : }
1795 0 : return true;
1796 : }
1797 :
1798 : void
1799 0 : PBrowserParent::Write(
1800 : PContentDialogParent* __v,
1801 : Message* __msg,
1802 : bool __nullable)
1803 : {
1804 : int32 id;
1805 0 : if ((!(__v))) {
1806 0 : if ((!(__nullable))) {
1807 0 : NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
1808 : }
1809 0 : id = 0;
1810 : }
1811 : else {
1812 0 : id = (__v)->mId;
1813 0 : if ((1) == (id)) {
1814 0 : NS_RUNTIMEABORT("actor has been |delete|d");
1815 : }
1816 : }
1817 :
1818 0 : Write(id, __msg);
1819 0 : }
1820 :
1821 : bool
1822 0 : PBrowserParent::Read(
1823 : PContentDialogParent** __v,
1824 : const Message* __msg,
1825 : void** __iter,
1826 : bool __nullable)
1827 : {
1828 : int32 id;
1829 0 : if ((!(Read((&(id)), __msg, __iter)))) {
1830 0 : return false;
1831 : }
1832 0 : if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
1833 0 : return false;
1834 : }
1835 :
1836 0 : if ((0) == (id)) {
1837 0 : (*(__v)) = 0;
1838 : }
1839 : else {
1840 0 : (*(__v)) = static_cast<PContentDialogParent*>(Lookup(id));
1841 0 : if ((!((*(__v))))) {
1842 0 : return false;
1843 : }
1844 : }
1845 0 : return true;
1846 : }
1847 :
1848 : void
1849 0 : PBrowserParent::Write(
1850 : POfflineCacheUpdateParent* __v,
1851 : Message* __msg,
1852 : bool __nullable)
1853 : {
1854 : int32 id;
1855 0 : if ((!(__v))) {
1856 0 : if ((!(__nullable))) {
1857 0 : NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
1858 : }
1859 0 : id = 0;
1860 : }
1861 : else {
1862 0 : id = (__v)->mId;
1863 0 : if ((1) == (id)) {
1864 0 : NS_RUNTIMEABORT("actor has been |delete|d");
1865 : }
1866 : }
1867 :
1868 0 : Write(id, __msg);
1869 0 : }
1870 :
1871 : bool
1872 0 : PBrowserParent::Read(
1873 : POfflineCacheUpdateParent** __v,
1874 : const Message* __msg,
1875 : void** __iter,
1876 : bool __nullable)
1877 : {
1878 : int32 id;
1879 0 : if ((!(Read((&(id)), __msg, __iter)))) {
1880 0 : return false;
1881 : }
1882 0 : if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
1883 0 : return false;
1884 : }
1885 :
1886 0 : if ((0) == (id)) {
1887 0 : (*(__v)) = 0;
1888 : }
1889 : else {
1890 0 : (*(__v)) = static_cast<POfflineCacheUpdateParent*>(Lookup(id));
1891 0 : if ((!((*(__v))))) {
1892 0 : return false;
1893 : }
1894 : }
1895 0 : return true;
1896 : }
1897 :
1898 : void
1899 0 : PBrowserParent::Write(
1900 : PContentPermissionRequestParent* __v,
1901 : Message* __msg,
1902 : bool __nullable)
1903 : {
1904 : int32 id;
1905 0 : if ((!(__v))) {
1906 0 : if ((!(__nullable))) {
1907 0 : NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
1908 : }
1909 0 : id = 0;
1910 : }
1911 : else {
1912 0 : id = (__v)->mId;
1913 0 : if ((1) == (id)) {
1914 0 : NS_RUNTIMEABORT("actor has been |delete|d");
1915 : }
1916 : }
1917 :
1918 0 : Write(id, __msg);
1919 0 : }
1920 :
1921 : bool
1922 0 : PBrowserParent::Read(
1923 : PContentPermissionRequestParent** __v,
1924 : const Message* __msg,
1925 : void** __iter,
1926 : bool __nullable)
1927 : {
1928 : int32 id;
1929 0 : if ((!(Read((&(id)), __msg, __iter)))) {
1930 0 : return false;
1931 : }
1932 0 : if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
1933 0 : return false;
1934 : }
1935 :
1936 0 : if ((0) == (id)) {
1937 0 : (*(__v)) = 0;
1938 : }
1939 : else {
1940 0 : (*(__v)) = static_cast<PContentPermissionRequestParent*>(Lookup(id));
1941 0 : if ((!((*(__v))))) {
1942 0 : return false;
1943 : }
1944 : }
1945 0 : return true;
1946 : }
1947 :
1948 : void
1949 0 : PBrowserParent::Write(
1950 : PDocumentRendererParent* __v,
1951 : Message* __msg,
1952 : bool __nullable)
1953 : {
1954 : int32 id;
1955 0 : if ((!(__v))) {
1956 0 : if ((!(__nullable))) {
1957 0 : NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
1958 : }
1959 0 : id = 0;
1960 : }
1961 : else {
1962 0 : id = (__v)->mId;
1963 0 : if ((1) == (id)) {
1964 0 : NS_RUNTIMEABORT("actor has been |delete|d");
1965 : }
1966 : }
1967 :
1968 0 : Write(id, __msg);
1969 0 : }
1970 :
1971 : bool
1972 0 : PBrowserParent::Read(
1973 : PDocumentRendererParent** __v,
1974 : const Message* __msg,
1975 : void** __iter,
1976 : bool __nullable)
1977 : {
1978 : int32 id;
1979 0 : if ((!(Read((&(id)), __msg, __iter)))) {
1980 0 : return false;
1981 : }
1982 0 : if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
1983 0 : return false;
1984 : }
1985 :
1986 0 : if ((0) == (id)) {
1987 0 : (*(__v)) = 0;
1988 : }
1989 : else {
1990 0 : (*(__v)) = static_cast<PDocumentRendererParent*>(Lookup(id));
1991 0 : if ((!((*(__v))))) {
1992 0 : return false;
1993 : }
1994 : }
1995 0 : return true;
1996 : }
1997 :
1998 : void
1999 0 : PBrowserParent::Write(
2000 : PRenderFrameParent* __v,
2001 : Message* __msg,
2002 : bool __nullable)
2003 : {
2004 : int32 id;
2005 0 : if ((!(__v))) {
2006 0 : if ((!(__nullable))) {
2007 0 : NS_RUNTIMEABORT("NULL actor value passed to non-nullable param");
2008 : }
2009 0 : id = 0;
2010 : }
2011 : else {
2012 0 : id = (__v)->mId;
2013 0 : if ((1) == (id)) {
2014 0 : NS_RUNTIMEABORT("actor has been |delete|d");
2015 : }
2016 : }
2017 :
2018 0 : Write(id, __msg);
2019 0 : }
2020 :
2021 : bool
2022 0 : PBrowserParent::Read(
2023 : PRenderFrameParent** __v,
2024 : const Message* __msg,
2025 : void** __iter,
2026 : bool __nullable)
2027 : {
2028 : int32 id;
2029 0 : if ((!(Read((&(id)), __msg, __iter)))) {
2030 0 : return false;
2031 : }
2032 0 : if (((1) == (id)) || (((0) == (id)) && ((!(__nullable))))) {
2033 0 : return false;
2034 : }
2035 :
2036 0 : if ((0) == (id)) {
2037 0 : (*(__v)) = 0;
2038 : }
2039 : else {
2040 0 : (*(__v)) = static_cast<PRenderFrameParent*>(Lookup(id));
2041 0 : if ((!((*(__v))))) {
2042 0 : return false;
2043 : }
2044 : }
2045 0 : return true;
2046 : }
2047 :
2048 :
2049 :
2050 : } // namespace dom
2051 : } // namespace mozilla
|