Latest Win64 CEF and testing ability of embedded browser in my OSR app to change size - playing a YouTube video as a test.
As I vigorously resize the embedded browser, it normally continues to play correctly but sometimes the updated pixels from the still playing video fail to arrive in my CefRenderHandler::OnPaint override. I capture a hash of the pixels each time and when visually, the video appears to freeze (audio still playing) the hash stays constant.
Resizing again usually puts things back to normal and I see a different hash each frame as expected.
The unpredictable nature suggests a race condition somewhere.
I resize the embedded browser by making the new size available to CefRenderHandler::GetViewRect..) then calling CefBrowser:: GetHost()::WasResized();
Maybe another way to phrase this is : What would cause CefRenderHandler::OnPaint(...) to be called but with bad data ?