Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(740)

Side by Side Diff: third_party/WebKit/Source/core/frame/LocalDOMWindow.h

Issue 1374533002: Null out LocalDOMWindow::m_frame on navigation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: try to fix crash-on-querying-event-path.html Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2009, 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2009, 2010 Apple Inc. All rights reserved.
3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) 3 * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 // LocalFrame*. 216 // LocalFrame*.
217 class WindowFrameObserver final : public NoBaseWillBeGarbageCollected<Window FrameObserver>, public LocalFrameLifecycleObserver { 217 class WindowFrameObserver final : public NoBaseWillBeGarbageCollected<Window FrameObserver>, public LocalFrameLifecycleObserver {
218 WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(WindowFrameObserver); 218 WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(WindowFrameObserver);
219 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(WindowFrameObserver); 219 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(WindowFrameObserver);
220 DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(WindowFrameObserver); 220 DECLARE_EMPTY_VIRTUAL_DESTRUCTOR_WILL_BE_REMOVED(WindowFrameObserver);
221 public: 221 public:
222 static PassOwnPtrWillBeRawPtr<WindowFrameObserver> create(LocalDOMWindow *, LocalFrame&); 222 static PassOwnPtrWillBeRawPtr<WindowFrameObserver> create(LocalDOMWindow *, LocalFrame&);
223 223
224 DECLARE_VIRTUAL_TRACE(); 224 DECLARE_VIRTUAL_TRACE();
225 225
226 private:
227 WindowFrameObserver(LocalDOMWindow*, LocalFrame&);
228
229 // LocalFrameLifecycleObserver overrides: 226 // LocalFrameLifecycleObserver overrides:
230 void willDetachFrameHost() override; 227 void willDetachFrameHost() override;
231 void contextDestroyed() override; 228 void contextDestroyed() override;
232 229
230 private:
231 WindowFrameObserver(LocalDOMWindow*, LocalFrame&);
232
233 RawPtrWillBeMember<LocalDOMWindow> m_window; 233 RawPtrWillBeMember<LocalDOMWindow> m_window;
234 }; 234 };
235 friend WTF::OwnedPtrDeleter<WindowFrameObserver>; 235 friend WTF::OwnedPtrDeleter<WindowFrameObserver>;
236 236
237 explicit LocalDOMWindow(LocalFrame&); 237 explicit LocalDOMWindow(LocalFrame&);
238 void dispose(); 238 void dispose();
239 239
240 Page* page(); 240 Page* page();
241 241
242 void clearDocument(); 242 void clearDocument();
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
286 } 286 }
287 287
288 inline String LocalDOMWindow::defaultStatus() const 288 inline String LocalDOMWindow::defaultStatus() const
289 { 289 {
290 return m_defaultStatus; 290 return m_defaultStatus;
291 } 291 }
292 292
293 } // namespace blink 293 } // namespace blink
294 294
295 #endif // LocalDOMWindow_h 295 #endif // LocalDOMWindow_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698