Module: wine Branch: master Commit: 48b550c9db5fe98be7b632c91a4b2a7235a53938 URL: http://source.winehq.org/git/wine.git/?a=commit;h=48b550c9db5fe98be7b632c91a...
Author: Stefan Dösinger stefandoesinger@gmx.at Date: Mon Oct 9 00:29:10 2006 +0200
ddraw: Set the DDSCAPS2_MIPMAPSUBLEVEL flag on sublevels.
---
dlls/ddraw/ddraw.c | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/dlls/ddraw/ddraw.c b/dlls/ddraw/ddraw.c index 594f434..a2177d2 100644 --- a/dlls/ddraw/ddraw.c +++ b/dlls/ddraw/ddraw.c @@ -2155,6 +2155,9 @@ IDirectDrawImpl_CreateSurface(IDirectDra return E_POINTER; /* unchecked */ }
+ /* According to the msdn this flag is ignored by CreateSurface */ + DDSD->ddsCaps.dwCaps2 &= ~DDSCAPS2_MIPMAPSUBLEVEL; + /* Modify some flags */ memset(&desc2, 0, sizeof(desc2)); desc2.dwSize = sizeof(desc2); /* For the struct copy */ @@ -2330,6 +2333,11 @@ IDirectDrawImpl_CreateSurface(IDirectDra desc2.ddsCaps.dwCaps &= ~DDSCAPS_FRONTBUFFER; /* It's not a front buffer */ desc2.ddsCaps.dwCaps |= DDSCAPS_BACKBUFFER; } + /* Set the DDSCAPS2_MIPMAPSUBLEVEL flag on mipmap sublevels according to the msdn */ + if(DDSD->ddsCaps.dwCaps & DDSCAPS_MIPMAP) + { + desc2.ddsCaps.dwCaps2 |= DDSCAPS2_MIPMAPSUBLEVEL; + }
for(i = 0; i < extra_surfaces; i++) {