xbmc/xbmc — pull request #1938 by pieh (2012-12-15 09:17:37+00:00)
Title: decouple rendering and window closing, fixes #13650

We can stuck on window closing if control report empty dirty region (f.e. label control without text or control group without child controls) because we rely on CGUIWindow::Render() being called to finish window closing (which won't be called as empty dirty regions are discarded in dirty region tracker).

This decouples rendereing and window closing by adding new AfterRender() methods that will be called each frame (regardless of dirty region state) that will handle window closing.

More details in http://trac.xbmc.org/ticket/13650