将 MSG_ROUTING_NONE 替换为 IPC::mojom::kRoutingIdNone

提交: cc69c44b | 2025-07-17 02:00:30+00:00

← 返回列表

将 MSG_ROUTING_NONE 替换为 IPC::mojom::kRoutingIdNone

Minor
提交哈希: cc69c44b7132de8755c22cd3d31bd15eb5a2c016
提交时间: 2025-07-17 02:00:30+00:00
影响等级: Minor
生成工具: webview2-upstream-sentry
上游审核链接: 查看上游审核 🔗

📋 摘要

本次提交是向移除 Chrome 对传统 IPC 消息依赖的重要一步。主要工作是将代码中所有使用的 MSG_ROUTING_NONE 常量替换为等价的 mojom 常量 IPC::mojom::kRoutingIdNone。虽然某些对象仍然通过路由 ID 进行标识(即使传统消息不再通过这些 ID 发送给它们),但现在使用等价的 mojom 常量。同时修复了 IWYU(Include What You Use)问题,并通过将 constants.mojom 设为 ipc/ 的公共依赖来修复 GN 检查问题。涉及的文件包括 81 个源文件,主要涵盖浏览器进程的渲染器宿主、扩展系统、GPU IPC 服务、网络请求处理等核心模块。

🎯 影响分析

这次变更主要是内部重构,对终端用户的功能和性能没有直接影响。这是一个渐进式的代码现代化工作,旨在逐步移除对传统 IPC 系统的依赖,转向更现代的 Mojo IPC 机制。对开发者而言,这次变更有助于:1) 提高代码的一致性和可维护性,2) 为未来完全移除传统 IPC 系统奠定基础,3) 改善构建系统的依赖关系管理。虽然当前不会改变任何用户可见的行为,但这种基础设施的改进将为未来的性能优化和新功能开发提供更好的架构基础。此次变更涉及面广但风险较低,因为只是常量替换而非逻辑变更。

受影响的类:

RenderFrameHostImpl RenderViewHostImpl RenderWidgetHostImpl NavigationRequest ServiceWorkerContainerHost ExtensionMessagePort WebRequestAPI GpuChannel CommandBufferProxyImpl