Hi Werner, 

another small patch for ft2-demos. Should be obvious/trivial. BTW, accumulated 
patches get reposted when I post the next one, so there is no need to rush.

I had a quick look at swapping the renderer hook on the fly. It seems that it 
is set when the module is loaded (i.e. the first font that needs it, I think), 
and I actually cannot see when it is unloaded, though it says the svg_free hook 
is run when the module is unloaded (which is never...), and when the module is 
unloaded, all the font faces it is associated with is freed.

That fundamentally means it is not possible to switch the renderer hook on a 
per current glyph level, keeping the current face?

That said, I'd probably like the ability to swap at restart. (i.e. a new 
command line switch).

Not sure about merging the skia-based renderer hook. Skia is definitely moving 
very fast and the diff has already bit-rotten. I did it with a m110 binary 
bundle from the java-skia folks, and one of the headers I use has already 
changed location in m116/HEAD . The addition will bit-rot very fast. OTOH, it 
is good to have alternatives.

Hin-Tak
From 0bded4e867c1db795130eb8d084bff3e5495c698 Mon Sep 17 00:00:00 2001
From: Hin-Tak Leung <ht...@users.sourceforge.net>
Date: Thu, 13 Jul 2023 18:30:05 +0100
Subject: [PATCH] rsvg-port.c: Correct usage of FT_Bool vs gboolean comparison

`TRUE' in this context is from glib headers (glib-2.0/glib/gmacros.h)
imported indirectly from rsvg headers. It should not be used
for comparison with FT_Bool types. Other usages of `TRUE/FALSE' in this
file is okay.

Signed-off-by: Hin-Tak Leung <ht...@users.sourceforge.net>
---
 src/rsvg-port.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/rsvg-port.c b/src/rsvg-port.c
index ff5b164..959afe9 100644
--- a/src/rsvg-port.c
+++ b/src/rsvg-port.c
@@ -437,7 +437,7 @@
     /* If a render call is to follow, just destroy the context for the */
     /* recording surface since no more drawing will be done on it.     */
     /* However, keep the surface itself for use by the render hook.    */
-    if ( cache == TRUE )
+    if ( cache )
     {
       cairo_destroy( rec_cr );
       goto CleanLibrsvg;
-- 
2.41.0

Reply via email to