freetype, fontconfig, Xft, mesa, which versions to use for modular builds?

Stefan Dirsch sndirsch at suse.de
Wed Jul 20 09:18:08 EST 2005


On Tue, Jul 19, 2005 at 05:29:23PM -0400, Keith Packard wrote:
> On Tue, 2005-07-19 at 19:20 +0200, Stefan Dirsch wrote:
> 
> > Probably you should use the upstream version of these libs. BTW, the
> > Wiki says, that Xft will be included by X.Org 7.0. Is this still
> > correct? 
> 
> Well, I'm actually hoping that Xft, along with the other X libraries
> which are currently upstream at xlibs.freedesktop.org will be able to
> migrate into X.org CVS and ship with X.org modular releases in the
> future.
> 
> But, as X.org 7.0 is the same as X.org 6.9, I'm not quite sure whether
> I'll be able to actually switch CVS repositories until after the "real"
> CVS shift, which probably means leaving them nominally upstream at
> xlibs.freedesktop.org and move them once we've jettisoned the monolithic
> tree and left it to rot.

Hmm ...

> > Another issue, I just tried to update libfreetype2 to
> > 2.1.10. Unfortunately, the Xserver freetype module uses some internal
> > libfreetype2 interface, which changed in the new version of
> > libfreetype2. This results in Xserver crashes and is related to
> > embedded bitmap support in libfreetype2. Therefore I recommend to use
> > libfreetype2 2.1.9 instead for now.
> 
> Oops. We should fix these for 7.0.

More details could be found here:

  http://lists.gnu.org/archive/html/freetype-devel/2005-07/msg00020.html

I attach a small patch, which avoids the crashes for me on i386 (and
disables embedded bitmap support completely), but there are different
libfreetype2 2.1.10 Xserver crashes, which seem to happen only on
x86_64. I'll try to debug these tomorrow.

Stefan

Public Key available
------------------------------------------------------
Stefan Dirsch (Res. & Dev.)   SUSE LINUX Products GmbH
Tel: 0911-740 53 0            Maxfeldstraße 5
FAX: 0911-740 53 479          D-90409 Nürnberg
http://www.suse.de            Germany 
------------------------------------------------------
-------------- next part --------------
--- lib/font/FreeType/ftfuncs.c.orig	2005-07-19 15:50:00.000000000 +0000
+++ lib/font/FreeType/ftfuncs.c	2005-07-19 15:56:23.000000000 +0000
@@ -928,7 +928,8 @@
     face = (TT_Face)ft_face;
     sfnt   = (SFNT_Service)face->sfnt;
 
-    if ( strike_index != 0xFFFFU && sfnt->load_sbits ) {
+    if ( strike_index != 0xFFFFU && sfnt->load_sbits && 
+         sfnt->find_sbit_image) {
         /* Check whether there is a glyph sbit for the current index */
         error = sfnt->find_sbit_image( face, glyph_index, strike_index,
                                        &range, &strike, &glyph_offset );
@@ -954,7 +955,10 @@
     if ( FT_STREAM_SEEK( ebdt_pos + glyph_offset ) )
       goto Exit;
 
-    error = sfnt->load_sbit_metrics( stream, range, &elem_metrics );
+    if ( sfnt->load_sbit_metrics ) {
+      error = sfnt->load_sbit_metrics( stream, range, &elem_metrics );
+    }
+    else error=-1;
     if ( error )
       goto Exit;
 


More information about the xorg-modular mailing list