summaryrefslogtreecommitdiffstats
path: root/patches/XFree86-4.3.99.10/generic/fontfile.diff
diff options
context:
space:
mode:
Diffstat (limited to 'patches/XFree86-4.3.99.10/generic/fontfile.diff')
-rw-r--r--patches/XFree86-4.3.99.10/generic/fontfile.diff28
1 files changed, 28 insertions, 0 deletions
diff --git a/patches/XFree86-4.3.99.10/generic/fontfile.diff b/patches/XFree86-4.3.99.10/generic/fontfile.diff
new file mode 100644
index 000000000..f22cd3c5e
--- /dev/null
+++ b/patches/XFree86-4.3.99.10/generic/fontfile.diff
@@ -0,0 +1,28 @@
+# Robert Schwebel 27 Aug 2003
+#
+# XFree86 has a problem with the KDrive server under certain
+# configurations: the symtom is that the server breaks with a segfault
+# on the first klick into a Mozilla browser widget.
+#
+# This workaround checks if scalable->renderer and
+# scalable->renderer->OpenScalable are defined and calls the latter
+# function only when it is defined.
+
+diff -urN xc/lib/font/fontfile/fontfile.c xc-ptx1/lib/font/fontfile/fontfile.c
+--- xc/lib/font/fontfile/fontfile.c 2003-07-10 13:02:51.000000000 +0200
++++ xc-ptx1/lib/font/fontfile/fontfile.c 2003-08-27 20:33:04.000000000 +0200
+@@ -426,9 +427,13 @@
+
+ strcpy (fileName, dir->directory);
+ strcat (fileName, scalable->fileName);
+- ret = (*scalable->renderer->OpenScalable) (fpe, pFont,
++
++ if (scalable->renderer && scalable->renderer->OpenScalable)
++ ret = (*scalable->renderer->OpenScalable) (fpe, pFont,
+ flags, entry, fileName, &vals, format, fmask,
+ non_cachable_font);
++ else
++ ret = BadFontName;
+
+ /* In case rasterizer does something bad because of
+ charset subsetting... */