summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Xext/appgroup.c1
-rw-r--r--Xext/appgroup.h85
-rw-r--r--Xext/security.c2
-rw-r--r--dix/dispatch.c2
-rw-r--r--dix/window.c2
-rw-r--r--dix/xpstubs.c3
-rw-r--r--fb/fbcompose.c21
-rw-r--r--hw/xfree86/xaa/xaaPict.c5
-rw-r--r--hw/xprint/DiPrint.h5
-rw-r--r--os/access.c3
-rw-r--r--os/connection.c2
-rw-r--r--os/io.c3
-rw-r--r--os/utils.c3
-rw-r--r--os/xdmauth.c9
14 files changed, 127 insertions, 19 deletions
diff --git a/Xext/appgroup.c b/Xext/appgroup.c
index 8db4cef01..9bf416ec6 100644
--- a/Xext/appgroup.c
+++ b/Xext/appgroup.c
@@ -43,7 +43,6 @@ from The Open Group.
#include "servermd.h"
#define _XAG_SERVER_
#include <X11/extensions/Xagstr.h>
-#include <X11/extensions/Xagsrv.h>
#include "xacestr.h"
#include "securitysrv.h"
#include <X11/Xfuncproto.h>
diff --git a/Xext/appgroup.h b/Xext/appgroup.h
index 05c9ef124..39087fe8e 100644
--- a/Xext/appgroup.h
+++ b/Xext/appgroup.h
@@ -1,10 +1,87 @@
-/* $XFree86$ */
+/*
+Copyright 1996, 1998 The Open Group
-void XagClientStateChange(
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of The Open Group shall
+not be used in advertising or otherwise to promote the sale, use or
+other dealings in this Software without prior written authorization
+from The Open Group.
+*/
+
+#ifndef _APPGROUP_SRV_H_
+#define _APPGROUP_SRV_H_
+
+#include <X11/Xfuncproto.h>
+
+_XFUNCPROTOBEGIN
+
+extern void XagConnectionInfo(
+ ClientPtr /* client */,
+ xConnSetupPrefix** /* conn_prefix */,
+ char** /* conn_info */,
+ int* /* num_screens */
+);
+
+extern VisualID XagRootVisual(
+ ClientPtr /* client */
+);
+
+extern Colormap XagDefaultColormap(
+ ClientPtr /* client */
+);
+
+extern ClientPtr XagLeader(
+ ClientPtr /* client */
+);
+
+extern void XagCallClientStateChange(
+ ClientPtr /* client */
+);
+
+extern Bool XagIsControlledRoot (
+ ClientPtr /* client */,
+ WindowPtr /* pParent */
+);
+
+extern XID XagId (
+ ClientPtr /* client */
+);
+
+extern void XagGetDeltaInfo (
+ ClientPtr /* client */,
+ CARD32* /* buf */
+);
+
+extern void XagClientStateChange(
CallbackListPtr* pcbl,
pointer nulldata,
pointer calldata);
-int ProcXagCreate (
+
+extern int ProcXagCreate (
register ClientPtr client);
-int ProcXagDestroy(
+
+extern int ProcXagDestroy(
register ClientPtr client);
+
+_XFUNCPROTOEND
+
+#endif /* _APPGROUP_SRV_H_ */
+
+
+
diff --git a/Xext/security.c b/Xext/security.c
index f80d46406..b96ac28c3 100644
--- a/Xext/security.c
+++ b/Xext/security.c
@@ -45,7 +45,7 @@ in this Software without prior written authorization from The Open Group.
#include <assert.h>
#include <stdarg.h>
#ifdef XAPPGROUP
-#include <X11/extensions/Xagsrv.h>
+#include "appgroup.h"
#endif
#include <stdio.h> /* for file reading operations */
#include <X11/Xatom.h> /* for XA_STRING */
diff --git a/dix/dispatch.c b/dix/dispatch.c
index 04347438d..a754a2f9e 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -111,7 +111,7 @@ int ProcInitialConnection();
#include "xace.h"
#endif
#ifdef XAPPGROUP
-#include <X11/extensions/Xagsrv.h>
+#include "appgroup.h"
#endif
#ifdef XKB
#ifndef XKB_IN_SERVER
diff --git a/dix/window.c b/dix/window.c
index 45a80391f..d90e39be0 100644
--- a/dix/window.c
+++ b/dix/window.c
@@ -127,7 +127,7 @@ Equipment Corporation.
#include "globals.h"
#ifdef XAPPGROUP
-#include <X11/extensions/Xagsrv.h>
+#include "appgroup.h"
#endif
#ifdef XACE
#include "xace.h"
diff --git a/dix/xpstubs.c b/dix/xpstubs.c
index 5135cc398..c06a524fa 100644
--- a/dix/xpstubs.c
+++ b/dix/xpstubs.c
@@ -35,6 +35,9 @@ from The Open Group.
#include <X11/fonts/font.h>
#ifdef XPRINT
#include "DiPrint.h"
+#else
+extern Bool XpClientIsBitmapClient(ClientPtr client);
+extern Bool XpClientIsPrintClient(ClientPtr client, FontPathElementPtr fpe);
#endif
Bool
diff --git a/fb/fbcompose.c b/fb/fbcompose.c
index 6f7e3e6ec..03adab456 100644
--- a/fb/fbcompose.c
+++ b/fb/fbcompose.c
@@ -2726,8 +2726,9 @@ static void fbFetchSourcePict(PicturePtr pict, int x, int y, int width, CARD32 *
xFixed_32_32 l;
xFixed_48_16 dx, dy, a, b, off;
- v.vector[0] = IntToxFixed(x);
- v.vector[1] = IntToxFixed(y);
+ /* reference point is the center of the pixel */
+ v.vector[0] = IntToxFixed(x) + xFixed1/2;
+ v.vector[1] = IntToxFixed(y) + xFixed1/2;
v.vector[2] = xFixed1;
if (pict->transform) {
if (!PictureTransformPoint3d (pict->transform, &v))
@@ -2793,8 +2794,9 @@ static void fbFetchSourcePict(PicturePtr pict, int x, int y, int width, CARD32 *
if (pict->transform) {
PictVector v;
- v.vector[0] = IntToxFixed(x);
- v.vector[1] = IntToxFixed(y);
+ /* reference point is the center of the pixel */
+ v.vector[0] = IntToxFixed(x) + xFixed1/2;
+ v.vector[1] = IntToxFixed(y) + xFixed1/2;
v.vector[2] = xFixed1;
if (!PictureTransformPoint3d (pict->transform, &v))
return;
@@ -2914,8 +2916,9 @@ static void fbFetchTransformed(PicturePtr pict, int x, int y, int width, CARD32
dx = pict->pDrawable->x;
dy = pict->pDrawable->y;
- v.vector[0] = IntToxFixed(x - dx);
- v.vector[1] = IntToxFixed(y - dy);
+ /* reference point is the center of the pixel */
+ v.vector[0] = IntToxFixed(x - dx) + xFixed1 / 2;
+ v.vector[1] = IntToxFixed(y - dy) + xFixed1 / 2;
v.vector[2] = xFixed1;
/* when using convolution filters one might get here without a transform */
@@ -3020,6 +3023,12 @@ static void fbFetchTransformed(PicturePtr pict, int x, int y, int width, CARD32
}
}
} else if (pict->filter == PictFilterBilinear) {
+ /* adjust vector for maximum contribution at 0.5, 0.5 of each texel. */
+ v.vector[0] -= v.vector[2] / 2;
+ v.vector[1] -= v.vector[2] / 2;
+ unit.vector[0] -= unit.vector[2] / 2;
+ unit.vector[1] -= unit.vector[2] / 2;
+
if (pict->repeatType == RepeatNormal) {
if (REGION_NUM_RECTS(pict->pCompositeClip) == 1) {
for (i = 0; i < width; ++i) {
diff --git a/hw/xfree86/xaa/xaaPict.c b/hw/xfree86/xaa/xaaPict.c
index f7c1f3dd0..a1ff51087 100644
--- a/hw/xfree86/xaa/xaaPict.c
+++ b/hw/xfree86/xaa/xaaPict.c
@@ -516,7 +516,10 @@ XAAComposite (CARD8 op,
(!pSrc->repeat || (xSrc >= 0 && ySrc >= 0 &&
xSrc+width<=pSrc->pDrawable->width &&
ySrc+height<=pSrc->pDrawable->height)) &&
- ((op == PictOpSrc && pSrc->format == pDst->format) ||
+ ((op == PictOpSrc &&
+ ((pSrc->format==pDst->format) ||
+ (pSrc->format==PICT_a8r8g8b8 && pDst->format==PICT_x8r8g8b8) ||
+ (pSrc->format==PICT_a8b8g8r8 && pDst->format==PICT_x8b8g8r8))) ||
(op == PictOpOver && !pSrc->alphaMap && !pDst->alphaMap &&
pSrc->format==pDst->format &&
(pSrc->format==PICT_x8r8g8b8 || pSrc->format==PICT_x8b8g8r8))))
diff --git a/hw/xprint/DiPrint.h b/hw/xprint/DiPrint.h
index a26477971..6801ce046 100644
--- a/hw/xprint/DiPrint.h
+++ b/hw/xprint/DiPrint.h
@@ -41,6 +41,7 @@ copyright holders.
#ifdef HAVE_DIX_CONFIG_H
#include <dix-config.h>
#endif
+#include <X11/fonts/fontstruct.h>
#ifndef _XpDiPrint_H_
#define _XpDiPrint_H_ 1
@@ -74,6 +75,10 @@ extern void PrinterInitGlobals(void);
extern void PrinterInitOutput(ScreenInfo *pScreenInfo, int argc, char **argv);
+extern Bool XpClientIsPrintClient(ClientPtr client, FontPathElementPtr fpe);
+
+extern Bool XpClientIsBitmapClient(ClientPtr client);
+
extern void _XpVoidNoop(void);
extern Bool _XpBoolNoop(void);
diff --git a/os/access.c b/os/access.c
index dc54beef7..60c2bd775 100644
--- a/os/access.c
+++ b/os/access.c
@@ -67,6 +67,9 @@ SOFTWARE.
#include <stdio.h>
#include <stdlib.h>
+#define XSERV_t
+#define TRANS_SERVER
+#define TRANS_REOPEN
#include <X11/Xtrans/Xtrans.h>
#include <X11/Xauth.h>
#include <X11/X.h>
diff --git a/os/connection.c b/os/connection.c
index 2fc3e8cec..ab877307a 100644
--- a/os/connection.c
+++ b/os/connection.c
@@ -148,7 +148,7 @@ extern __const__ int _nfiles;
#include "opaque.h"
#include "dixstruct.h"
#ifdef XAPPGROUP
-#include <X11/extensions/Xagsrv.h>
+#include "appgroup.h"
#endif
#ifdef XACE
#include "xace.h"
diff --git a/os/io.c b/os/io.c
index a9527baa3..e95f0e6a8 100644
--- a/os/io.c
+++ b/os/io.c
@@ -66,6 +66,9 @@ SOFTWARE.
#include <X11/Xwinsock.h>
#endif
#include <stdio.h>
+#define XSERV_t
+#define TRANS_SERVER
+#define TRANS_REOPEN
#include <X11/Xtrans/Xtrans.h>
#include <X11/Xmd.h>
#include <errno.h>
diff --git a/os/utils.c b/os/utils.c
index f977b837c..e41c3664b 100644
--- a/os/utils.c
+++ b/os/utils.c
@@ -68,6 +68,9 @@ OR PERFORMANCE OF THIS SOFTWARE.
#include <stdio.h>
#include "misc.h"
#include <X11/X.h>
+#define XSERV_t
+#define TRANS_SERVER
+#define TRANS_REOPEN
#include <X11/Xtrans/Xtrans.h>
#include "input.h"
#include "dixfont.h"
diff --git a/os/xdmauth.c b/os/xdmauth.c
index 774298133..faa2e3799 100644
--- a/os/xdmauth.c
+++ b/os/xdmauth.c
@@ -41,6 +41,9 @@ from The Open Group.
#include <stdio.h>
#include <X11/X.h>
+#define XSERV_t
+#define TRANS_SERVER
+#define TRANS_REOPEN
#include <X11/Xtrans/Xtrans.h>
#include "os.h"
#include "osdep.h"
@@ -153,9 +156,9 @@ XdmAuthenticationInit (char *cookie, int cookie_len)
XdmcpRegisterAuthentication (XdmAuthenticationName, XdmAuthenticationNameLen,
(unsigned char *)&rho,
sizeof (rho),
- XdmAuthenticationValidator,
- XdmAuthenticationGenerator,
- XdmAuthenticationAddAuth);
+ (ValidatorFunc)XdmAuthenticationValidator,
+ (GeneratorFunc)XdmAuthenticationGenerator,
+ (AddAuthorFunc)XdmAuthenticationAddAuth);
}
#endif /* XDMCP */