/* * decrements reference count, destructs interface data if reference count is 0 */ static DirectResult IDirectFBFont_Release( IDirectFBFont *thiz ) { DIRECT_INTERFACE_GET_DATA(IDirectFBFont) D_DEBUG_AT( Font, "%s( %p )\n", __FUNCTION__, thiz ); if (--data->ref == 0) IDirectFBFont_Destruct( thiz ); return DFB_OK; }
static void IDirectFBFont_DGIFF_Destruct( IDirectFBFont *thiz ) { IDirectFBFont_data *data = thiz->priv; CoreFont *font = data->font; DGIFFImplData *impl = font->impl_data; munmap( impl->map, impl->size ); D_FREE( impl ); IDirectFBFont_Destruct( thiz ); }