Without this fix, the font cache was filling up with lots of duplicate entries, and getting cache misses, thereby causing font-intensive applications to be very slow (e.g. AvalonEdit) . This fix provides 30x speed increase when processing glyphs.
From: Philip Gruebele philipg@audiophilleo.com
Without this fix, the font cache was filling up with lots of duplicate entries, and getting cache misses, thereby causing font-intensive applications to be very slow (e.g. AvalonEdit) . This fix provides 30x speed increase when processing glyphs. --- dlls/dwrite/font.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/dwrite/font.c b/dlls/dwrite/font.c index 5e1fb1c8cbf..9dce26a17c2 100644 --- a/dlls/dwrite/font.c +++ b/dlls/dwrite/font.c @@ -98,7 +98,7 @@ static struct cache_entry * fontface_get_cache_entry(struct dwrite_fontface *fon fontface_release_cache_entry(old_entry); }
- if (wine_rb_put(&fontface->cache.tree, &key, &entry->entry) == -1) + if (wine_rb_put(&fontface->cache.tree, key, &entry->entry) == -1) { WARN("Failed to add cache entry.\n"); free(entry);
This merge request was approved by Nikolay Sivov.