Chromium Code Reviews| Index: services/ui/ws/window_server.cc |
| diff --git a/services/ui/ws/window_server.cc b/services/ui/ws/window_server.cc |
| index 812240dfd1267bead665f2862d3d10c3597d7445..e996989ee00e5ff85a226312d28286ebd968af05 100644 |
| --- a/services/ui/ws/window_server.cc |
| +++ b/services/ui/ws/window_server.cc |
| @@ -868,10 +868,9 @@ void WindowServer::OnSurfaceCreated(const cc::SurfaceInfo& surface_info) { |
| HandleTemporaryReferenceForNewSurface(surface_info.id(), window); |
|
kylechar
2017/06/07 17:18:48
There is a heuristic here to find the embedder whe
kylechar
2017/06/07 17:55:15
It looks like the heuristic is broken anyways. I'l
|
| - if (!window->parent()) |
| - return; |
| - |
| - WindowTree* window_tree = GetTreeWithId(window->parent()->id().client_id); |
| + // We always use the owner of the window's id (even for embedded window), |
| + // because an embedded window's id is allocated by the parent's window tree. |
| + WindowTree* window_tree = GetTreeWithId(window->id().client_id); |
| if (window_tree) |
| window_tree->ProcessWindowSurfaceChanged(window, surface_info); |
| } |