Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 /* | 1 /* |
| 2 * Copyright (C) 2006 Eric Seidel <eric@webkit.org> | 2 * Copyright (C) 2006 Eric Seidel <eric@webkit.org> |
| 3 * Copyright (C) 2008, 2009 Apple Inc. All rights reserved. | 3 * Copyright (C) 2008, 2009 Apple Inc. All rights reserved. |
| 4 * Copyright (C) Research In Motion Limited 2011. All rights reserved. | 4 * Copyright (C) Research In Motion Limited 2011. All rights reserved. |
| 5 * | 5 * |
| 6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
| 7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
| 8 * are met: | 8 * are met: |
| 9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
| 10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 57 | 57 |
| 58 namespace blink { | 58 namespace blink { |
| 59 | 59 |
| 60 SVGImage::SVGImage(ImageObserver* observer) | 60 SVGImage::SVGImage(ImageObserver* observer) |
| 61 : Image(observer) | 61 : Image(observer) |
| 62 { | 62 { |
| 63 } | 63 } |
| 64 | 64 |
| 65 SVGImage::~SVGImage() | 65 SVGImage::~SVGImage() |
| 66 { | 66 { |
| 67 // willBeDestroyed() will fire events but doesn't allow scripts | |
| 68 // to run so we can call it in EventDispatchForbiddenScope scope. | |
|
esprehn
2014/12/18 06:57:30
I would be more specific and call out that unload
| |
| 69 EventDispatchForbiddenScope::AllowUserAgentEvents allowEvents; | |
| 67 if (m_page) { | 70 if (m_page) { |
| 68 // Store m_page in a local variable, clearing m_page, so that SVGImageCh romeClient knows we're destructed. | 71 // Store m_page in a local variable, clearing m_page, so that SVGImageCh romeClient knows we're destructed. |
| 69 OwnPtrWillBeRawPtr<Page> currentPage = m_page.release(); | 72 OwnPtrWillBeRawPtr<Page> currentPage = m_page.release(); |
| 70 // Break both the loader and view references to the frame | 73 // Break both the loader and view references to the frame |
| 71 currentPage->willBeDestroyed(); | 74 currentPage->willBeDestroyed(); |
| 72 } | 75 } |
| 73 | 76 |
| 74 // Verify that page teardown destroyed the Chrome | 77 // Verify that page teardown destroyed the Chrome |
| 75 ASSERT(!m_chromeClient || !m_chromeClient->image()); | 78 ASSERT(!m_chromeClient || !m_chromeClient->image()); |
| 76 } | 79 } |
| (...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 437 | 440 |
| 438 return m_page; | 441 return m_page; |
| 439 } | 442 } |
| 440 | 443 |
| 441 String SVGImage::filenameExtension() const | 444 String SVGImage::filenameExtension() const |
| 442 { | 445 { |
| 443 return "svg"; | 446 return "svg"; |
| 444 } | 447 } |
| 445 | 448 |
| 446 } | 449 } |
| OLD | NEW |