From 6a06a6c81047a08ba35c3c4995ae8139d355f366 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Thu, 9 Feb 2017 22:31:19 +0000 Subject: dix: Move InitFonts up above screen initialization Backport from X.org: commit 91ea0965dd4dfeba0a914c47ad4a64768e983b1b Author: Keith Packard Date: Wed Nov 11 22:02:04 2015 -0800 dix: Move InitFonts up above screen initialization Font initialization was split into two stages, the first was to set up font privates with a call to ResetFontPrivateIndex, then much later the call to InitFonts to set up all of the FPEs. Doing the full font initialization before initializing the video drivers means that we can move the call to ResetFontPrivateIndex inside InitFonts. Reviewed-by: Adam Jackson Signed-off-by: Keith Packard Backported-to-NX-by: Mike Gabriel --- nx-X11/programs/Xserver/dix/main.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'nx-X11/programs/Xserver/dix/main.c') diff --git a/nx-X11/programs/Xserver/dix/main.c b/nx-X11/programs/Xserver/dix/main.c index ab8e41394..86d495466 100644 --- a/nx-X11/programs/Xserver/dix/main.c +++ b/nx-X11/programs/Xserver/dix/main.c @@ -261,8 +261,8 @@ main(int argc, char *argv[], char *envp[]) ResetPixmapPrivates(); #endif ResetColormapPrivates(); - ResetFontPrivateIndex(); ResetDevicePrivateIndex(); + InitFonts(); InitCallbackManager(); InitVisualWrap(); InitOutput(&screenInfo, argc, argv); @@ -294,7 +294,6 @@ main(int argc, char *argv[], char *envp[]) FatalError("failed to initialize core devices"); ReserveClientIds(serverClient); - InitFonts(); if (loadableFonts) { SetFontPath(0, 0, (unsigned char *)defaultFontPath, &error); } else { -- cgit v1.2.3 From 4768662b03067afbc122683d234205716ba3606e Mon Sep 17 00:00:00 2001 From: Eamon Walsh Date: Thu, 16 Feb 2017 08:21:56 +0000 Subject: dix: pass a valid ClientPtr to SetFontPath in all cases. Backported from X.org: commit 7e9e01a4a34fa45521067d43c5bbff942dd5d51a Author: Eamon Walsh Date: Wed Oct 10 17:40:22 2007 -0400 dix: pass a valid ClientPtr to SetFontPath in all cases. Backported-to-NX-by: Mike Gabriel --- nx-X11/programs/Xserver/dix/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'nx-X11/programs/Xserver/dix/main.c') diff --git a/nx-X11/programs/Xserver/dix/main.c b/nx-X11/programs/Xserver/dix/main.c index 86d495466..745ca14e8 100644 --- a/nx-X11/programs/Xserver/dix/main.c +++ b/nx-X11/programs/Xserver/dix/main.c @@ -295,7 +295,7 @@ main(int argc, char *argv[], char *envp[]) ReserveClientIds(serverClient); if (loadableFonts) { - SetFontPath(0, 0, (unsigned char *)defaultFontPath, &error); + SetFontPath(serverClient, 0, (unsigned char *)defaultFontPath, &error); } else { if (SetDefaultFontPath(defaultFontPath) != Success) ErrorF("failed to set default font path '%s'\n", -- cgit v1.2.3 From f743f9f743362c891f049a514cdcf3d39546194b Mon Sep 17 00:00:00 2001 From: Jamey Sharp Date: Thu, 16 Feb 2017 08:19:40 +0000 Subject: SetFontPath: set client->errorValue on failure. Backported from X.org: commit 21ceae9002c6364deb3d074cf2da7d3864cf6879 Author: Jamey Sharp Date: Tue May 11 10:24:00 2010 -0700 SetFontPath: set client->errorValue on failure. Previously the callers were only setting errorValue on Success, when it's ignored, and leaving it alone on failure, when it's sent to the client. Since SetFontPath takes the ClientPtr, let it set client->errorValue instead of letting the callers continue to get it wrong. Signed-off-by: Jamey Sharp Reviewed-by: Julien Cristau Signed-off-by: Keith Packard Backported-to-NX-by: Mike Gabriel --- nx-X11/programs/Xserver/dix/main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'nx-X11/programs/Xserver/dix/main.c') diff --git a/nx-X11/programs/Xserver/dix/main.c b/nx-X11/programs/Xserver/dix/main.c index 745ca14e8..384b6f9b6 100644 --- a/nx-X11/programs/Xserver/dix/main.c +++ b/nx-X11/programs/Xserver/dix/main.c @@ -295,7 +295,7 @@ main(int argc, char *argv[], char *envp[]) ReserveClientIds(serverClient); if (loadableFonts) { - SetFontPath(serverClient, 0, (unsigned char *)defaultFontPath, &error); + SetFontPath(serverClient, 0, (unsigned char *)defaultFontPath); } else { if (SetDefaultFontPath(defaultFontPath) != Success) ErrorF("failed to set default font path '%s'\n", -- cgit v1.2.3 From f4c80a78ce0e5648334fc43e5c93a068ed3ec5be Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Thu, 9 Feb 2017 14:05:57 +0100 Subject: Xserver: Support building against libXfont2 (v2) API and old libXfont(1) API alike. Fixes ArcticaProject/nx-libs#296. Inspired by the following X.org commit. Other than X.org, we will continue support for building nx-libs against libXfont1 for a while. commit 05a793f5b3c40747d5a92a076def7f4fb673c7e7 Author: Keith Packard Date: Tue Sep 1 18:50:55 2015 -0700 dix: Switch to the libXfont2 API (v2) This new libXfont API eliminates exposing internal X server symbols to the font library, replacing those with a struct full of the entire API needed to use that library. v2: Use libXfont2 instead of libXfont_2 Signed-off-by: Keith Packard Reviewed-by: Adam Jackson --- nx-X11/programs/Xserver/dix/main.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'nx-X11/programs/Xserver/dix/main.c') diff --git a/nx-X11/programs/Xserver/dix/main.c b/nx-X11/programs/Xserver/dix/main.c index 384b6f9b6..3f3c079e4 100644 --- a/nx-X11/programs/Xserver/dix/main.c +++ b/nx-X11/programs/Xserver/dix/main.c @@ -95,6 +95,12 @@ Equipment Corporation. #include "colormapst.h" #include "cursorstr.h" #include +#include +#ifdef HAS_XFONT2 +# include +#else +# include +#endif /* HAS_XFONT2 */ #include "opaque.h" #include "servermd.h" #include "site.h" @@ -252,7 +258,11 @@ main(int argc, char *argv[], char *envp[]) InitAtoms(); InitEvents(); +#ifdef HAS_XFONT2 + xfont2_init_glyph_caching(); +#else InitGlyphCaching(); +#endif /* of HAS_XFONT2 */ ResetClientPrivates(); ResetScreenPrivates(); ResetWindowPrivates(); -- cgit v1.2.3