Commits

Svetoslav Ganov authored 06f938e8aa5
PopupWindow dismiss() can get into a recursive loop. 1. The dismiss method in a PopupWindow is first removing the popup View from the WindowManager and then if the content View differs from the popup View the former is removed from the latter. Then dismiss() clears the dismissed flag so a subsequent call to dismiss() is a NOP. However, removing a View both from the WindowManager and from its parent ViewGroup triggers stuff wich may lead to a subsequent call to dismiss(). This leads to a stack overflow exception. bug:5598944 Change-Id: I2aeeda591be3e9aa98fec1ee17ea8f0e746e6992