>
> The real problem of Wine code is that it does not handle correctly the
> case when a window is created with a zero size, then it is
> resized to a non-zero
> size; it's not mapped in this case
>
You're right about that. My code was assuming that rectWindow wasn't changed
yet when entering in X11DRV_WND_SetWindowPos function, which was a false
assumption.

The attached patch fix the problem.

Changed log:
Force mapping a window if the window wasn't map, the window is visible and
we are changing the size of the window. This case could occur, if the
previous size was zero.

Modified file:
        window/x11drv/wnd.c

> I would appreciate some comment of the person who wrote this
> code (hey, Stephane :)). (I'm confused by the winposPtr pointer; why
> not use wndPtr directly ? is there any case where the hwnd in winpos
> could be different from the hwnd in wndptr ?)
>

You're right, winposPtr will always be the same as wndPtr. Maybe in the past
it wasn't the case, and the code hasn't be updated.

        Stephane Lussier
        Macadamian Technologies

zerosized.diff

Reply via email to