2012/10/24 Dmitry Timoshkov <[email protected]>

> Christian Costa <[email protected]> wrote:
>
> >  BOOL WINAPI ClientToScreen( HWND hwnd, LPPOINT lppnt )
> >  {
> > +    DWORD error = GetLastError();
> > +
> > +    if (!hwnd)
> > +    {
> > +        SetLastError( ERROR_INVALID_WINDOW_HANDLE );
> > +        return FALSE;
> > +    }
> > +
> > +    SetLastError( 0xdeadbeef );
> >      MapWindowPoints( hwnd, 0, lppnt, 1 );
> > +
> > +    if (GetLastError() != 0xdeadbeef)
> > +        return FALSE;
> > +
> > +    SetLastError(error);
> >      return TRUE;
> >  }
>
> As been said before these games with saving/restoring last error value
> are broken.
>
>
> Last time you said wrong so what do you mean by wrong or broken?
The only way to know if MapWindowPoints fails is to set last error first
and check it
after. If I don't restore the previous value, the tests will not pass. Of
course I can
arrange the tests but hey. And I can check windows handle here as Alexandre
said.


Reply via email to