--- a/netwerk/ipc/NeckoChannelParams.ipdlh+++ b/netwerk/ipc/NeckoChannelParams.ipdlh@@ -125,17 +125,17 @@ struct LoadInfoArgs IPCClientInfo? reservedClientInfo; IPCClientInfo? initialClientInfo; /** * Subresource loads may have a controller set based on their owning * window/worker client. We must send this across IPC to support * performing interception in the parent. */- OptionalIPCServiceWorkerDescriptor controller;+ IPCServiceWorkerDescriptor? controller; nsCString[] corsUnsafeHeaders; bool forcePreflight; bool isPreflight; bool loadTriggeredFromExternal; bool serviceWorkerTaintingSynthesized; bool documentHasUserInteracted; bool documentHasLoaded;@@ -157,17 +157,17 @@ struct ParentLoadInfoForwarderArgs // WebExtextensions' WebRequest API allows extensions to intercept and // redirect a channel to a data URI. This modifications happens in // the parent and needs to be mirrored to the child so that security // checks can pass. bool allowInsecureRedirectToDataURI; // The ServiceWorker controller that may be set in the parent when // interception occurs.- OptionalIPCServiceWorkerDescriptor controller;+ IPCServiceWorkerDescriptor? controller; // The service worker may synthesize a Response with a particular // tainting value. uint32_t tainting; // We must also note that the tainting value was explicitly set // by the service worker. bool serviceWorkerTaintingSynthesized;@@ -195,17 +195,17 @@ struct ChildLoadInfoForwarderArgs { // The reserved and initial ClientInfo values may change during a // redirect if the new channel is cross-origin to the old channel. IPCClientInfo? reservedClientInfo; IPCClientInfo? initialClientInfo; // The ServiceWorker controller may be cleared in the child during // a redirect.- OptionalIPCServiceWorkerDescriptor controller;+ IPCServiceWorkerDescriptor? controller; }; //----------------------------------------------------------------------------- // HTTP IPDL structs //----------------------------------------------------------------------------- struct CorsPreflightArgs {