How to fix Fontconfig error

fontconfigfontssteam

Whenever Fontconfig is run by an application (in my specific case, Civ V in steam), it outputs this error:

Fontconfig error: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
Fontconfig error: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
Fontconfig warning: "/usr/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 78: saw unknown, expected number

Though the application doesn't crash entirely, the video freezes when this error is printed and the audio continues without error.

  • Is the Fontconfig error causing the problem?
  • How do I fix it?

Edit:

The computer is Ubuntu 14.04 32 bit. I suspect the problem is associated with fontconfig, because the video (Aspyr intro) freezes when this error is printed, exactly when the shift-tab steam community message shows. That text is malformed and bloated instead of inconspicuous. Here is the file created by steam 2> error.txt, which I killed after the problem.

    rm: cannot remove ‘/home/seth/.steam/steam’: Is a directory
    rm: cannot remove ‘/home/seth/.steam/bin’: Is a directory
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Fontconfig error: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
    Fontconfig error: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
    Fontconfig warning: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 78: saw unknown, expected number
    [0705/210154:WARNING:proxy_service.cc(958)] PAC support disabled because there is no system implementation
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    [HTTP Remote Control] HTTP server listening on port 27037.
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Generating new string page texture 2: 48x256, total string texture memory is 49.15 KB
    Generating new string page texture 3: 256x256, total string texture memory is 311.30 KB
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Adding licenses for the following package(s): 0, 11092, 11707, 14631, 28756, 29136
    roaming config store loaded successfully - 716 bytes.
    migrating temporary roaming config store
    Installing breakpad exception handler for appid(steam)/version(1404163764_client)
    Failed to init SteamVR because it isn't installed
    ExecCommandLine: "/home/seth/.steam/ubuntu12_32/steam"
    System startup time: 6.84 seconds
    Generating new string page texture 73: 1024x256, total string texture memory is 1.36 MB
    Generating new string page texture 74: 128x256, total string texture memory is 131.07 KB
    Generating new string page texture 75: 128x256, total string texture memory is 1.49 MB
    Generating new string page texture 76: 64x256, total string texture memory is 1.56 MB
    Generating new string page texture 77: 32x256, total string texture memory is 1.59 MB

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.
    Generating new string page texture 82: 128x256, total string texture memory is 1.72 MB
    Generating new string page texture 83: 384x256, total string texture memory is 2.11 MB
    ExecCommandLine: "/home/seth/.steam/root/ubuntu12_32/steam steam://open/driverhelperready"
    ExecSteamURL: "steam://open/driverhelperready"
    Game update: AppID 8930 "Sid Meier's Civilization V", ProcID 4526, IP 0.0.0.0:0
    ERROR: ld.so: object '/home/seth/.steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.

    (steam:4437): LIBDBUSMENU-GLIB-WARNING **: Trying to remove a child that doesn't believe we're it's parent.
    ERROR: ld.so: object '/home/seth/.steam/ubuntu12_64/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS64): ignored.
    Setting breakpad minidump AppID = 8930
    Steam_SetMinidumpSteamID:  Caching Steam ID:  76561198080162579 [API loaded no]
    Installing breakpad exception handler for appid(gameoverlayui)/version(20140630132217_client)
    Installing breakpad exception handler for appid(gameoverlayui)/version(1.0_client)
    Fontconfig error: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: Installing breakpad exception handler for appid(gameoverlayui)/version(1.0_client)
    non-double matrix element
    Fontconfig error: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 70: non-double matrix element
    Fontconfig warning: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 78: saw unknown, expected number
    [0705/210210:WARNING:proxy_service.cc(958)] PAC support disabled because there is no system implementation
    Installing breakpad exception handler for appid(gameoverlayui)/version(1.0_client)    

Best Answer

fc-cache -v | grep -i err

will give you an error too at line 78 (for me). What it turned out to be was that the <matrix> element in /etc/fonts/conf.d/10-scale-bitmap-fonts.conf has 2 <name> elements when it should only have one. Doing:

sudo nano "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf"

and removing the extra line that reads:

<name>pixelsizefixupfactor</name>

makes the fc-cache query return no errors any more and when loading steam (and subsequent games) the Fontconfig error: lines are no longer present.

Per http://linux.die.net/man/5/fonts-conf I thought we'd need 4 <double> elements in the <matrix> but it doesn't appear to be necessary.

Related Question