Henri Verbeet : wined3d: Always set the get_drawable_size() surface function.
Alexandre Julliard
julliard at winehq.org
Tue Aug 3 13:10:34 CDT 2010
Module: wine
Branch: master
Commit: 88ff3f406d0df659c65dac85f045746bf56373c4
URL: http://source.winehq.org/git/wine.git/?a=commit;h=88ff3f406d0df659c65dac85f045746bf56373c4
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date: Tue Aug 3 10:13:33 2010 +0200
wined3d: Always set the get_drawable_size() surface function.
---
dlls/wined3d/surface.c | 38 +++++++++++++++++++++++++++++---------
1 files changed, 29 insertions(+), 9 deletions(-)
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 849d892..47282b0 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -4028,11 +4028,19 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_PrivateSetup(IWineD3DSurface *iface) {
}
}
- if(This->resource.usage & WINED3DUSAGE_RENDERTARGET) {
- switch(wined3d_settings.offscreen_rendering_mode) {
- case ORM_FBO: This->get_drawable_size = get_drawable_size_fbo; break;
- case ORM_BACKBUFFER: This->get_drawable_size = get_drawable_size_backbuffer; break;
- }
+ switch (wined3d_settings.offscreen_rendering_mode)
+ {
+ case ORM_FBO:
+ This->get_drawable_size = get_drawable_size_fbo;
+ break;
+
+ case ORM_BACKBUFFER:
+ This->get_drawable_size = get_drawable_size_backbuffer;
+ break;
+
+ default:
+ ERR("Unhandled offscreen rendering mode %#x.\n", wined3d_settings.offscreen_rendering_mode);
+ return WINED3DERR_INVALIDCALL;
}
This->Flags |= SFLAG_INSYSMEM;
@@ -4669,10 +4677,22 @@ static HRESULT WINAPI IWineD3DSurfaceImpl_SetContainer(IWineD3DSurface *iface, I
if(swapchain) {
This->get_drawable_size = get_drawable_size_swapchain;
IWineD3DSwapChain_Release(swapchain);
- } else if(This->resource.usage & WINED3DUSAGE_RENDERTARGET) {
- switch(wined3d_settings.offscreen_rendering_mode) {
- case ORM_FBO: This->get_drawable_size = get_drawable_size_fbo; break;
- case ORM_BACKBUFFER: This->get_drawable_size = get_drawable_size_backbuffer; break;
+ }
+ else
+ {
+ switch (wined3d_settings.offscreen_rendering_mode)
+ {
+ case ORM_FBO:
+ This->get_drawable_size = get_drawable_size_fbo;
+ break;
+
+ case ORM_BACKBUFFER:
+ This->get_drawable_size = get_drawable_size_backbuffer;
+ break;
+
+ default:
+ ERR("Unhandled offscreen rendering mode %#x.\n", wined3d_settings.offscreen_rendering_mode);
+ return WINED3DERR_INVALIDCALL;
}
}
More information about the wine-cvs
mailing list