Index: third_party/WebKit/Source/core/dom/Document.cpp |
diff --git a/third_party/WebKit/Source/core/dom/Document.cpp b/third_party/WebKit/Source/core/dom/Document.cpp |
index dff02f7249fa660d7e136ddbdfd24c7ad473be35..3a7ce21466f628bb09e048b38d438655c5e14513 100644 |
--- a/third_party/WebKit/Source/core/dom/Document.cpp |
+++ b/third_party/WebKit/Source/core/dom/Document.cpp |
@@ -5037,9 +5037,13 @@ void Document::removeFromTopLayer(Element* element) |
HTMLDialogElement* Document::activeModalDialog() const |
{ |
- if (m_topLayerElements.isEmpty()) |
- return 0; |
- return toHTMLDialogElement(m_topLayerElements.last().get()); |
+ for (auto it = m_topLayerElements.rbegin(); it != m_topLayerElements.rend(); ++it) { |
+ Element* currentTopLayerElement = it->get(); |
+ if (isHTMLDialogElement(currentTopLayerElement)) |
esprehn
2015/09/24 20:17:01
if (isHTMLDialogElement(*it))
return toHTMLDialo
dsinclair
2015/09/28 17:14:58
Done.
|
+ return toHTMLDialogElement(currentTopLayerElement); |
+ } |
+ |
+ return nullptr; |
} |
void Document::exitPointerLock() |