Add deadlock counter to prevent endless loop (issue #73)

This commit is contained in:
Nimetu 2014-01-03 19:11:49 +02:00
parent d6a41e652f
commit 913e653f5b

View file

@ -1094,7 +1094,10 @@ namespace NLGUI
bool updateCoordCalled= false;
// updateCoords the window only if the master group is his parent and if need it
// do it until updateCoords() no more invalidate coordinates!!
while (pIG->getParent()==rMG.Group && (pIG->getInvalidCoords()>0))
// add deadlock counter to prevent endless loop (Issue #73: web browser long scroll lockup)
int deadlock = 10;
while (--deadlock > 0 && pIG->getParent()==rMG.Group && (pIG->getInvalidCoords()>0))
{
bRecomputeCtrlUnderPtr = true;
// Update as many pass wanted (3 time for complex resizing, 1 for scroll for example)