Index: ui/aura/window_targeter_unittest.cc |
diff --git a/ui/aura/window_targeter_unittest.cc b/ui/aura/window_targeter_unittest.cc |
index f14d3379ea3d1113305578e1cd2b06330b8a96b3..86bd8d804da87ba7fddcd8fe1499db1175801425 100644 |
--- a/ui/aura/window_targeter_unittest.cc |
+++ b/ui/aura/window_targeter_unittest.cc |
@@ -118,6 +118,21 @@ TEST_F(WindowTargeterTest, ScopedWindowTargeter) { |
} |
} |
+// Test that ScopedWindowTargeter does not crash if the window for which it |
+// replaces the targeter gets destroyed before it does. |
+TEST_F(WindowTargeterTest, ScopedWindowTargeterWindowDestroyed) { |
+ test::TestWindowDelegate delegate; |
+ scoped_ptr<Window> window(CreateNormalWindow(1, root_window(), &delegate)); |
+ scoped_ptr<ScopedWindowTargeter> scoped_targeter( |
+ new ScopedWindowTargeter(window.get(), scoped_ptr<ui::EventTargeter>( |
+ new StaticWindowTargeter(window.get())))); |
+ |
+ window.reset(); |
+ scoped_targeter.reset(); |
+ |
+ // We did not crash! |
+} |
+ |
TEST_F(WindowTargeterTest, TargetTransformedWindow) { |
root_window()->Show(); |