ref: 91bb16583bb6554fb45243f016054ea576e07086
parent: ca8d1cda945a9b58c02029f16f7ab87640cbe393
author: David Turner <[email protected]>
date: Tue Dec 5 17:23:12 EST 2000
fixed a bug in FTC_Manager_Done
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2000-12-05 David Turner <[email protected]>
+ * src/cache/ftcmanag.c (FTC_Manager_Done): fixed a bug that caused
+ an occasional crash when the function was called (due to a dangling
+ pointer)
+
* src/base/ftsystem.c (FT_Done_Memory): fixed an obvious bug,
the ANSI "free" function was called, instead of "memory->free()"
--- a/src/cache/ftcmanag.c
+++ b/src/cache/ftcmanag.c
@@ -139,6 +139,7 @@
FT_UNUSED( lru );
FT_Done_Size( (FT_Size)node->root.data );
+ node->root.data = 0;
}
@@ -299,8 +300,11 @@
}
/* discard faces and sizes */
- FT_Lru_Done( manager->sizes_lru );
FT_Lru_Done( manager->faces_lru );
+ manager->faces_lru = 0;
+
+ FT_Lru_Done( manager->sizes_lru );
+ manager->sizes_lru;
FREE( manager );
}