Looks sane to me, for whatever that's worth:

Reviewed-by: Jamey Sharp <[email protected]>

On 9/27/11, Alan Coopersmith <[email protected]> wrote:
> The LookupWindow function was deprecated in xserver commit ed75b056511ccb4
> and removed during the Xorg 1.11 merge window by commit 82a8677d9175732.
>
> Signed-off-by: Alan Coopersmith <[email protected]>
> ---
>
> Needed for compatibility with the Xorg 1.11 release - only build tested
> with Xorg 1.11.1, but I tried to preserve compatibility with older releases,
> following the current status quo of this driver, while making it simple to
> drop that when it's no longer needed.
>
>  src/vmwarexinerama.c |   32 ++++++++++++++++++++++++++------
>  1 files changed, 26 insertions(+), 6 deletions(-)
>
> diff --git a/src/vmwarexinerama.c b/src/vmwarexinerama.c
> index 371c7b1..e86df34 100644
> --- a/src/vmwarexinerama.c
> +++ b/src/vmwarexinerama.c
> @@ -46,6 +46,20 @@
>  #ifndef HAVE_XORG_SERVER_1_5_0
>  #include <xf86_ansic.h>
>  #include <xf86_libc.h>
> +
> +/* dixLookupWindow was added in Xorg server 1.5 to replace LookupWindow */
> +#ifndef DixGetAttrAccess
> +# define DixGetAttrAccess   (1<<4)
> +#endif
> +
> +static inline int
> +dixLookupWindow(WindowPtr *pWin, XID id, ClientPtr client, Mask access)
> +{
> +    *pWin = LookupWindow(stuff->window, client);
> +    if (!*pWin)
> +     return BadWindow;
> +    return Success;
> +}
>  #endif
>
>
> @@ -116,10 +130,12 @@ VMwareXineramaGetState(ClientPtr client)
>      ExtensionEntry *ext;
>      ScrnInfoPtr pScrn;
>      VMWAREPtr pVMWARE;
> +    int rc;
>
>      REQUEST_SIZE_MATCH(xPanoramiXGetStateReq);
> -    pWin = LookupWindow(stuff->window, client);
> -    if(!pWin) return BadWindow;
> +    rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess);
> +    if (rc != Success)
> +     return rc;
>
>      if (!(ext = CheckExtension(PANORAMIX_PROTOCOL_NAME))) {
>         return BadMatch;
> @@ -167,10 +183,12 @@ VMwareXineramaGetScreenCount(ClientPtr client)
>      ExtensionEntry *ext;
>      ScrnInfoPtr pScrn;
>      VMWAREPtr pVMWARE;
> +    int rc;
>
>      REQUEST_SIZE_MATCH(xPanoramiXGetScreenCountReq);
> -    pWin = LookupWindow(stuff->window, client);
> -    if(!pWin) return BadWindow;
> +    rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess);
> +    if (rc != Success)
> +     return rc;
>
>      if (!(ext = CheckExtension(PANORAMIX_PROTOCOL_NAME))) {
>         return BadMatch;
> @@ -218,10 +236,12 @@ VMwareXineramaGetScreenSize(ClientPtr client)
>      ExtensionEntry *ext;
>      ScrnInfoPtr pScrn;
>      VMWAREPtr pVMWARE;
> +    int rc;
>
>      REQUEST_SIZE_MATCH(xPanoramiXGetScreenSizeReq);
> -    pWin = LookupWindow (stuff->window, client);
> -    if(!pWin)  return BadWindow;
> +    rc = dixLookupWindow(&pWin, stuff->window, client, DixGetAttrAccess);
> +    if (rc != Success)
> +     return rc;
>
>      if (!(ext = CheckExtension(PANORAMIX_PROTOCOL_NAME))) {
>         return BadMatch;
> --
> 1.7.3.2
>
> _______________________________________________
> [email protected]: X.Org development
> Archives: http://lists.x.org/archives/xorg-devel
> Info: http://lists.x.org/mailman/listinfo/xorg-devel
>
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to