source file of the GNU LilyPond music typesetter
- (c) 1999--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1999--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
All_font_metrics::~All_font_metrics ()
{
- scm_unprotect_object (afm_p_dict_->self_scm ());
- scm_unprotect_object (tfm_p_dict_->self_scm ());
+ scm_gc_unprotect_object (afm_p_dict_->self_scm ());
+ scm_gc_unprotect_object (tfm_p_dict_->self_scm ());
}
Adobe_font_metric *
if (path.empty_b ())
{
- char * p = ly_find_afm (name.ch_C ());
- if (p)
+ String p = ly_find_afm (name.ch_C ());
+ if (p.length_i ())
path = p;
}
afm_p_dict_->set (sname,val);
- scm_unprotect_object (val);
+ scm_gc_unprotect_object (val);
Adobe_font_metric *afm
= dynamic_cast<Adobe_font_metric*> (unsmob_metrics (val));
- if (output_format_global == "tex")
+ /*
+ only check checksums if there is one. We take the risk that
+ some file has valid checksum 0
+ */
+ if (afm->checksum_)
{
+
Tex_font_metric * tfm = find_tfm (name);
/* FIXME: better warning message
if (path.empty_b ())
{
- char * p = ly_find_tfm (name.ch_C ());
- if (p)
+ String p = ly_find_tfm (name.ch_C ());
+ if (p.length_i ())
path = p;
}
unsmob_metrics (val)->description_ = gh_cons (name_str, gh_double2scm (1.0));
tfm_p_dict_->set (sname, val);
- scm_unprotect_object (val);
+ scm_gc_unprotect_object (val);
}
return