[2/4] ddraw: Add more tests and fixes for SetSurfaceDesc
Stefan Dösinger
stefandoesinger at gmx.at
Tue Nov 15 13:28:10 CST 2011
On Tuesday 15 November 2011 15:19:20 Henri Verbeet wrote:
> (E.g. does calling SetSurfaceDesc() with the original surface desc
> work?
That's a reasonable thing to test, I'll add it to the test(The answer
is no, you can't set the original surface desc).
> What about bits not in DDSD_ALL? Etc.)
I forgot a test that shows that SetSurfaceDesc is valid only on systemmem
surfaces(as the msdn claims). The flags I tested are those that make sense on
systemmem surfaces.
I don't think testing the other bits without an app that uses them is a
good idea. The YV12 blitting issue from yesterday was a reminder of that -
in corner cases like that you probably get 3 different results on 3 different
systems and have to explain them.
I'm working on adding a test for various pools and plain surfaces vs textures.
> Also, as a general
> principle, I'd be happier about the ddraw tests if they actually
> tested all the different interface versions.
In principle I agree, but handling this on a per-test basis won't work. The
behavior doesn't just depend on the interface version you call, but also the
version with which the object was created(see e.g. surface::GetDDInterface,
ddraw::QueryInterface). To properly test the version differences you have to
create all versions and QI all versions from each of them and run the tests on
those interfaces.
For that reason I'm currently ignoring the interface versions unless the API
makes differences likely(e.g. DDSURFACEDESC.dwSize) or an application depends
on version specific behavior(e.g. refcounting).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://www.winehq.org/pipermail/wine-devel/attachments/20111115/4ca4dedc/attachment.pgp>
More information about the wine-devel
mailing list