>> FT_Load_Glyph( face, 0, 0 );
>> FT_Get_Glyph( face->glyph, &reference );
>>
>> FT_Glyph_Copy( reference, &glyph1 );
>> ...
>> FT_Done_Glyph( glyph1 );
>>
>> FT_Glyph_Copy( reference, &glyph2 );
>> ...
>> FT_Done_Glyph( glyph2 );
>>
>> FT_Done_Glyph( reference );
>
> Mhm; I mean I get it -- changing to deep copy here would also
> introduce semantic changes which is never anything you really want
> in an API.
>
> Just another proposal (feel free to decline!): how about coming back
> to (3) and introduce something like `FT_Get_Glyph_Deep'?
> Internally, the same logic could be used; I would simply add a
> switch (bool var) that gets propagated down to
> `ft_bitmap_glyph_init' to skip the lazy copy? I could even prepare
> the patch if you like, no work for anyone ;)
With `FT_Get_Glyph_Deep' the code would be
FT_Load_Glyph( face, 0, 0 );
FT_Get_Glyph_Deep( face->glyph, &glyph1 );
...
FT_Done_Glyph( glyph1 );
FT_Get_Glyph_Deep( reference, &glyph2 );
...
FT_Done_Glyph( glyph2 );
which indeed looks nicer – but just a bit :-) The question is whether
we really need this...
Werner
_______________________________________________
Freetype-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/freetype-devel