| Index: Source/WebCore/rendering/RenderButton.cpp
 | 
| ===================================================================
 | 
| --- Source/WebCore/rendering/RenderButton.cpp	(revision 134270)
 | 
| +++ Source/WebCore/rendering/RenderButton.cpp	(working copy)
 | 
| @@ -60,7 +60,11 @@
 | 
|  
 | 
|  void RenderButton::removeChild(RenderObject* oldChild)
 | 
|  {
 | 
| -    if (oldChild == m_inner || !m_inner) {
 | 
| +    // m_inner should be the only child, but checking for direct children who
 | 
| +    // are not m_inner prevents security problems when that assumption is
 | 
| +    // violated.
 | 
| +    if (oldChild == m_inner || !m_inner || oldChild->parent() == this) {
 | 
| +        ASSERT(oldChild == m_inner || !m_inner);
 | 
|          RenderDeprecatedFlexibleBox::removeChild(oldChild);
 | 
|          m_inner = 0;
 | 
|      } else
 | 
| 
 |