Closed Bug 1523364 Opened 5 years ago Closed 5 years ago

WebReplay mochitests broken by bug 1521189

Categories

(Core Graveyard :: Web Replay, enhancement)

enhancement
Not set
normal

Tracking

(firefox67 fixed)

RESOLVED FIXED
mozilla67
Tracking Status
firefox67 --- fixed

People

(Reporter: nika, Assigned: bhackett1024)

References

Details

Attachments

(1 file)

These tests began failing after changes from bug 1521189 - it looks like WebReplay changes the shutdown lifecycle of PBrowser actors in a way which isn't compatible with this new actor's lifecycle.

Attached patch patchSplinter Review

The problem here is that IPDL messages sent to the middleman are forwarded to their recording child process unless there is special handling for the message in ParentForwarding.cpp. The middleman has its own WindowGlobalChild actors, and if it sends a Destroy to the parent then the parent's delete response ends up being received in the recording process, which crashes.

The attached patch fixes this by dispatching parent->child PWindowGlobal messages to either the middleman or the recording process, depending on whether there is an actor with the right routing ID in the middleman.

Assignee: nobody → bhackett1024
Attachment #9039622 - Flags: review?(nika)
Comment on attachment 9039622 [details] [diff] [review]
patch

Review of attachment 9039622 [details] [diff] [review]:
-----------------------------------------------------------------

::: toolkit/recordreplay/ipc/ParentForwarding.cpp
@@ +140,5 @@
> +          found = true;
> +          break;
> +        }
> +      }
> +    }

Couldn't this entire check be simplified to:

```
IProtocol* actor = contentChild->Lookup(aMessage.routing_id());
if (actor && actor->GetProtocolTypeId() == PWindowGlobalStart) {
  // ...
}
```
Attachment #9039622 - Flags: review?(nika) → review+
Pushed by bhackett@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/2220ce4355d5
Handle WindowGlobal messages within the middleman when appropriate, r=nika.
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla67
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: