fixed a small bug in the abstract chunk cache class
diff --git a/src/cache/ftcchunk.c b/src/cache/ftcchunk.c
index c26c74d..a8dec04 100644
--- a/src/cache/ftcchunk.c
+++ b/src/cache/ftcchunk.c
@@ -183,16 +183,19 @@
FT_ListNode lrunode;
- lrunode = FTC_CHUNKNODE_TO_LRUNODE( node );
-
- manager->num_bytes -= clazz->size_node( node );
- manager->num_nodes--;
+ if (node)
+ {
+ lrunode = FTC_CHUNKNODE_TO_LRUNODE( node );
- FT_List_Remove( glyphs_lru, lrunode );
+ manager->num_bytes -= clazz->size_node( node );
+ manager->num_nodes--;
- clazz->destroy_node( node );
+ FT_List_Remove( glyphs_lru, lrunode );
+
+ clazz->destroy_node( node );
- bucket[0] = 0;
+ bucket[0] = 0;
+ }
}
if ( clazz->done )