<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - Relocated caches not quite working"
href="https://bugs.freedesktop.org/show_bug.cgi?id=106618">106618</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Relocated caches not quite working
</td>
</tr>
<tr>
<th>Product</th>
<td>fontconfig
</td>
</tr>
<tr>
<th>Version</th>
<td>unspecified
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Other
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Component</th>
<td>library
</td>
</tr>
<tr>
<th>Assignee</th>
<td>fontconfig-bugs@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>alexl@redhat.com
</td>
</tr>
<tr>
<th>QA Contact</th>
<td>freedesktop@behdad.org
</td>
</tr></table>
<p>
<div>
<pre>Now that F28 and flatpak are starting to ship, we're finding issues with them.
For example, the libreoffice flatpak can't find any fonts.
The reason for this is that libreoffice gets FC_FILE from the patterns, and
this gets the host-side path (/usr/share/fonts/...) instead of the rewritten
host-side path (/run/host/fonts/).
Its a bit weird though, because fc-list prints the correct path. In fact, if
you run:
FC_DEBUG=8191 fc-list -v
In the sandbox you can see that the first time (FC_DEBUG) the pattern is
printed its in /usr, but the final result is in /run/host/fonts.
I took the LO code and made a minimal example of printing the wrong (/usr)
thing:
#include <stdio.h>
#include <string.h>
#include <fontconfig/fontconfig.h>
int
main(int argc, char *argv[])
{
FcFontSet* fs = FcConfigGetFonts( FcConfigGetCurrent(), FcSetSystem );
if (fs == NULL)
return 1;
for (int i = 0; i < fs->nfont; ++i)
{
FcPattern* p = fs->fonts[i];
FcChar8* file = NULL;
FcResult eFileRes = FcPatternGetString(p, FC_FILE, 0, &file);
FcPatternPrint (p);
if (eFileRes == FcResultMatch)
printf ("FC_FILE: %s\n", file);
}
return 0;
}
When is the rewriting happening? I think it needs to happen earlier.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>