------------------ Original ------------------
Date: Mon, Dec 8, 2014 04:05 AM
To: "Changhui Liu"<liuchanghui@linuxdeepin.com>;
Cc: "Sebastian Lackner"<sebastian@fds-team.de>; "Vincent Povirk"<madewokherd@gmail.com>; "wine-devel"<wine-devel@winehq.org>; "洪谦"<qhong@codeweavers.com>;
Subject: Re: Puzzle about ExtSelectClipRgn?
On 2014-12-03 03:36, Changhui Liu wrote:
> Dear all, I test this code :
>
>
> void test (HDC hdc, HRGN hregion)
> {
> RECT srcbox;
> RECT dstbox;
>
>
> GetClipBox(hdc, &dstbox);
> GetRgnBox(hregion, &srcbox);
>
>
> TRACE("Before ExtSelectClipRgn:%s,%s\n",
> wine_dbgstr_rect(&srcbox), wine_dbgstr_rect(&dstbox) );
>
>
> ExtSelectClipRgn(hdc, hregion, RGN_AND );
>
> GetClipBox(graphics->hdc,&dstbox);
>
> TRACE("After ExtSelectClipRgn:%s,%s\n", wine_dbgstr_rect(&dstbox) );
The second %s here will print random memory.
> }
>
>
> It output in wine is :
> Before ExtSelectClipRgn:(693,5)-(763,28),(693,5)-(763,28)
> After ExtSelectClipRgn:(693,5)-(693,5)
>
>
> But I think it should be output:
> Before ExtSelectClipRgn:(693,5)-(763,28),(693,5)-(763,28)
> After ExtSelectClipRgn:(693,5)-(763,28)
>
>
> Where is my understanding mistake, or is it a bug in ExtSelectClipRgn?