2009/12/10 Stefan Dösinger stefan@codeweavers.com:
@@ -6304,7 +6304,7 @@ HRESULT create_primary_opengl_context(IWineD3DDevice *iface, IWineD3DSwapChain *
...
- swapchain->context[0]->render_offscreen = swapchain->render_to_fbo;
- swapchain->context[0]->render_offscreen = surface_is_offscreen(target);
This will introduce a warning, surface_is_offscreen() takes an IWineD3DSurface pointer.
swapchain->context[0]->render_offscreen = swapchain->render_to_fbo;
...
if(swapchain->context[0])
{
swapchain->context[0]->render_offscreen = swapchain->render_to_fbo;
}
That's pretty ugly, couple of points: - It doesn't make sense for "render_to_fbo" to be TRUE for a swapchain without back buffer. - Setting "render_offscreen" is really the responsibility of the context_create() call, similar to create_primary_opengl_context(). - The line is actually wrong, the relevant context has been setup to render to the front buffer, so "render_offscreen" should always be FALSE, even if there is a back buffer.