From f1f2a360fc2e2b57c7e090ef5536438d66c2e334 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Mon, 22 Jan 2018 22:44:54 +0100 Subject: dbe: add NXAGENT_SERVER guard for DixLookup --- nx-X11/programs/Xserver/dbe/Imakefile | 8 ++++++++ nx-X11/programs/Xserver/dbe/dbe.c | 24 ++++++++++++++++++++++++ 2 files changed, 32 insertions(+) (limited to 'nx-X11') diff --git a/nx-X11/programs/Xserver/dbe/Imakefile b/nx-X11/programs/Xserver/dbe/Imakefile index 54ce471c5..3c4f40174 100644 --- a/nx-X11/programs/Xserver/dbe/Imakefile +++ b/nx-X11/programs/Xserver/dbe/Imakefile @@ -6,6 +6,14 @@ INCLUDES = -I$(SERVERSRC)/include -I$(XINCLUDESRC) -I$(EXTINCSRC) $(EXTRAINCLUDES) `pkg-config --cflags-only-I pixman-1` LINTLIBS = ../dix/llib-ldix.ln ../os/llib-los.ln +#if defined(NXAgentServer) && NXAgentServer + NX_DEFINES = -DNXAGENT_SERVER +#endif + + DEFINES = \ + $(NX_DEFINES) \ + $(NULL) + NormalLibraryObjectRule() NormalLibraryTarget(dbe,$(OBJS)) diff --git a/nx-X11/programs/Xserver/dbe/dbe.c b/nx-X11/programs/Xserver/dbe/dbe.c index 702af85fd..588dd0582 100644 --- a/nx-X11/programs/Xserver/dbe/dbe.c +++ b/nx-X11/programs/Xserver/dbe/dbe.c @@ -375,11 +375,17 @@ ProcDbeAllocateBackBufferName(ClientPtr client) REQUEST_SIZE_MATCH(xDbeAllocateBackBufferNameReq); /* The window must be valid. */ +#ifndef NXAGENT_SERVER + status = dixLookupWindow(&pWin, stuff->window, client, DixWriteAccess); + if (status != Success) + return status; +#else if (!(pWin = SecurityLookupWindow(stuff->window, client, DixWriteAccess))) { return(BadWindow); } +#endif /* The window must be InputOutput. */ if (pWin->drawable.class != InputOutput) @@ -704,12 +710,21 @@ ProcDbeSwapBuffers(ClientPtr client) /* Check all windows to swap. */ /* Each window must be a valid window - BadWindow. */ +#ifndef NXAGENT_SERVER + error = dixLookupWindow(&pWin, dbeSwapInfo[i].window, client, + DixWriteAccess); + if (error != Success) { + free(swapInfo); + return error; + } +#else if (!(pWin = SecurityLookupWindow(dbeSwapInfo[i].window, client, DixWriteAccess))) { free(swapInfo); return(BadWindow); } +#endif /* Each window must be double-buffered - BadMatch. */ if (DBE_WINDOW_PRIV(pWin) == NULL) @@ -867,12 +882,21 @@ ProcDbeGetVisualInfo(ClientPtr client) for (i = 0; i < stuff->n; i++) { +#ifndef NXAGENT_SERVER + register int rc = dixLookupDrawable(pDrawables+i, drawables[i], client, 0, + DixReadAccess); + if (rc != Success) { + free(pDrawables); + return rc; + } +#else if (!(pDrawables[i] = (DrawablePtr)SecurityLookupDrawable( drawables[i], client, DixReadAccess))) { free(pDrawables); return(BadDrawable); } +#endif } } -- cgit v1.2.3