Index: services/ui/ws/window_manager_state.cc |
diff --git a/services/ui/ws/window_manager_state.cc b/services/ui/ws/window_manager_state.cc |
index 4f4d2eeee12330265cfb8169edd7f5c00a0d6dc0..cbec88f4bf3d07554d355b0bf828ed0fe9aa3b49 100644 |
--- a/services/ui/ws/window_manager_state.cc |
+++ b/services/ui/ws/window_manager_state.cc |
@@ -496,12 +496,14 @@ ClientSpecificId WindowManagerState::GetEventTargetClientId( |
tree = window_server()->GetTreeWithId(window->id().client_id); |
} |
- const ServerWindow* embed_root = |
- tree->HasRoot(window) ? window : GetEmbedRoot(window); |
- while (tree && tree->embedder_intercepts_events()) { |
- DCHECK(tree->HasRoot(embed_root)); |
- tree = window_server()->GetTreeWithId(embed_root->id().client_id); |
- embed_root = GetEmbedRoot(embed_root); |
+ if (tree) { |
+ const ServerWindow* embed_root = |
+ tree->HasRoot(window) ? window : GetEmbedRoot(window); |
+ while (tree && tree->embedder_intercepts_events()) { |
+ DCHECK(tree->HasRoot(embed_root)); |
+ tree = window_server()->GetTreeWithId(embed_root->id().client_id); |
+ embed_root = GetEmbedRoot(embed_root); |
+ } |
} |
if (!tree) { |