On Sun, Oct 12, 2008 at 8:52 PM, Chris Ahrendt celticht32@aol.com wrote:
Ok I have threaded through ddraw_test adding as I had them fail a check and a fix in dsurface.c test. The test now fails when the CreateSurface fails. Before this there were several point in the test where the return status was not checked. As I encountered them and they failed with an exception I added the failure I found at other parts which did the create surface. For some reason a 3rd and 4th surface fails on ATI.
Addached you will find the proposed fix. I also found a point where the code did not skip but did a goto to the error point with the variables unitialised.
@@ -198,7 +198,10 @@ static void MipMapCreationTest(void) ddsd.dwHeight = 32; rc = IDirectDraw_CreateSurface(lpDD, &ddsd, &lpDDSMipMapTest, NULL); ok(rc==DDERR_INVALIDPARAMS,"CreateSurface returned: %x\n",rc); - + if (FAILED(rc)) { + skip("failed to create surface\n"); + return; + }
Can you see why this is wrong? You've done this in a couple other places.