The attached patch fixes the problem for me.
Index: wftk/wftk/font_data.cpp
===================================================================
--- wftk/wftk/font_data.cpp     (revision 9)
+++ wftk/wftk/font_data.cpp     (revision 10)
@@ -28,7 +28,7 @@
 unsigned long wftk::FontData::lib_refcount_ = 0;
 
 wftk::FontData::FontData(const std::string& file, unsigned ptsize,
-       unsigned face_index) throw(wftk::Font::BadFont) : map_(*this)
+       unsigned face_index) throw(wftk::Font::BadFont) : map_(*this, false)
 {
   reflib();
 
Index: wftk/wftk/font.h
===================================================================
--- wftk/wftk/font.h    (revision 9)
+++ wftk/wftk/font.h    (revision 10)
@@ -239,7 +239,8 @@
 
   class MapType : public RefMap<Color, SurfaceTable> {
    public:
-    MapType(FontData& font) : font_(font) {}
+    MapType(FontData& font, bool autodelete = true) :
+       RefMap<Color, SurfaceTable>(autodelete), font_(font) {}
 
    private:
     // create the entries in the RefMap

Reply via email to