oleaut32/tests: Fix the IPicture::Render() usage.
When one specifies the target rectangle (0, 0, width, -height) IPicture::Render() places the origin at 0,0 and flips the image vertically. This means that in order to paint an icon on the DC it's necessary to specify the rectangle (0, height, width, -height), i.e. place the origin at 0,height. I've written a test app that verifies this behaviour, ufortunately I don't see a way to add a Wine test case for this. The test currently works by chance under Windows because in case of (0, 0, width, -height) IPicture::Render() draws black rectangle instead of an icon at (0, 0, width, height). If Wine intends to replicate this behaviour it should be fixed by a separate patch. Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
3acc0b0968
commit
4b525aa0a4
|
@ -864,7 +864,7 @@ static void test_Render(void)
|
|||
SetPixelV(hdc, 10, 10, 0x00223344);
|
||||
expected = GetPixel(hdc, 0, 0);
|
||||
|
||||
hres = picture_render(pic, hdc, 1, 1, 9, 9, 0, 0, pWidth, -pHeight, NULL);
|
||||
hres = picture_render(pic, hdc, 1, 1, 9, 9, 0, pHeight, pWidth, -pHeight, NULL);
|
||||
ole_expect(hres, S_OK);
|
||||
|
||||
if(hres != S_OK) goto done;
|
||||
|
|
Loading…
Reference in New Issue