Am 01.10.2009 um 13:47 schrieb Alexandre Julliard:
Stefan Dösinger <stefandoesin...@gmx.at> writes:
Patches 2, 3 and 4 fix bug 19365. In the long run we want to get rid
of the dxVersion parameter that is used in this patch, but we haven't
agreed on a way to do this so far, so lets fix the bug first.
It doesn't work here:
../../../tools/runtest -q -P wine -M ddraw.dll -T ../../.. -p
ddraw_test.exe.so visual.c && touch visual.ok
visual.c:600: Test failed: Offscreen failed: Got color 0x00ff00ff,
expected 0x00ffffff.
visual.c:788: Test failed: SRCALPHA on texture returned color
0x007f0080, expected 0x00bf4000
make: *** [visual.ok] Error 2
I see what's going on.
The visual offscreen rendering test doesn't change the viewport(the
test was ported from d3d9), so it ends up with a viewport that is
bigger than the render target, and thus invalid. Trying to set the
viewport just returned by GetViewport fails.
The combination of the failing test and my new test shows that Windows
clamps the currently set viewport to the render target size, if the
viewport is bigger. GetViewport still returns the viewport from the
stateblock. A test shows that this clamping occurs even in d3d9.