[Fontconfig] fontconfig: Branch 'master' - 2 commits
Behdad Esfahbod
behdad at behdad.org
Tue Jan 1 18:25:01 PST 2013
I pushed out a bunch of fixes for this.
Next thing I really want to do is to make it possible to add custom elements
through FcNameParse. Something like:
fc-match :testproperty(Integer)=3
The possible types are all of the FcType*.
Thanks for testing!
behdad
On 13-01-01 12:36 PM, Raimund Steger wrote:
> Behdad Esfahbod wrote:
>> New commits:
>> commit 1fbb0b3b15774c187c697a80fb3c89bc1f3e0006
>> Author: Behdad Esfahbod <behdad at behdad.org>
>> Date: Sun Dec 30 19:08:42 2012 -0600
>>
>> Don't warn if an unknown element is used in an expression
>>
>> The type will be resolved at runtime...
>
>> [...]
>
>> diff --git a/src/fcxml.c b/src/fcxml.c
>> index d31caf5..cf9c8dd 100644
>> --- a/src/fcxml.c
>> +++ b/src/fcxml.c
>> @@ -594,6 +594,10 @@ FcTypecheckValue (FcConfigParse *parse, FcType value,
>> FcType type)
>> return;
>> if (type == (FcType) -1)
>> return;
>> + /* It's perfectly fine to use user-define elements in expressions,
>> + * so don't warn in that case. */
>> + if (value == (FcType) -1)
>> + return;
>> FcConfigMessage (parse, FcSevereWarning, "saw %s, expected %s",
>> FcTypeName (value), FcTypeName (type));
>> }
>
> Hm, while testing this I noticed that FcPatternDuplicate returns 0 if it comes
> across an element where the FcObjectValidType check fails, such as when a
> string was assigned to the 'dpi' property.
>
> This causes a coredump in fc-match, which probably has been like this forever;
> only, the warning gave a hint previously which it doesn't do now. (fontconfig
> still prints a warning if FC_DEBUG=4096 (FC_DBG_OBJTYPES) is set though.)
>
> E. g. for the config:
>
> <match target="font">
> <edit name="test_string" mode="assign">
> <string>test_string_value</string>
> </edit>
> <edit name="dpi" mode="assign">
> <name>test_string</name>
> </edit>
> </match>
>
> (which is of course invalid anyway) the following happens:
>
> sun2:fontconfig)FC_DEBUG=4096 fc-match -v
> FC_DEBUG=4096
> FC_DEBUG=4096
> FcPattern object dpi does not accept value "test_string_value"Null pattern
> zsh: segmentation fault (core dumped) FC_DEBUG=4096 fc-match -v
>
> Maybe the FC_DBG_OBJTYPES warnings would be better off as normal warnings?
> Although this would mean that the user sees at least two warnings in the case
> of a direct assignment (without <name>).
>
> Everything else works just fine AFAICT.
>
> Raimund
>
>
>
--
behdad
http://behdad.org/
More information about the Fontconfig
mailing list