X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fopen-type-font.cc;h=3038df4331645f30dcb000be55cf3deb0830171d;hb=cee6cea4ed55eb4fa1f9d83c997ebc19744a6e1a;hp=49d8fd317720a6aad0ce26413de00bab7702806b;hpb=e24fb7cc5671aea95211d4a0c56f28fb6fe8720e;p=lilypond.git diff --git a/lily/open-type-font.cc b/lily/open-type-font.cc index 49d8fd3177..3038df4331 100644 --- a/lily/open-type-font.cc +++ b/lily/open-type-font.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 2004--2014 Han-Wen Nienhuys + Copyright (C) 2004--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -27,7 +27,6 @@ using namespace std; #include FT_TRUETYPE_TABLES_H #include "dimensions.hh" -#include "freetype.hh" #include "international.hh" #include "modified-font-metric.hh" #include "warn.hh" @@ -77,7 +76,11 @@ load_scheme_table (char const *tag_str, FT_Face face) string contents ((char const *)buffer, length); contents = "(quote (" + contents + "))"; +#if GUILEV2 + tab = scm_eval_string (scm_from_utf8_string (contents.c_str ())); +#else tab = scm_c_eval_string (contents.c_str ()); +#endif free (buffer); } return tab; @@ -158,7 +161,7 @@ Open_type_font::attachment_point (const string &glyph_name) const SCM entry = scm_hashq_ref (lily_character_table_, sym, SCM_BOOL_F); Offset o; - if (entry == SCM_BOOL_F) + if (scm_is_false (entry)) return o; SCM char_alist = entry; @@ -174,7 +177,7 @@ Open_type_font::get_indexed_char_dimensions (size_t signed_idx) const { SCM box = scm_hashq_ref (lily_index_to_bbox_table_, scm_from_unsigned_integer (signed_idx), SCM_BOOL_F); - Box *box_ptr = Box::unsmob (box); + Box *box_ptr = unsmob (box); if (box_ptr) return *box_ptr; } @@ -192,7 +195,7 @@ Open_type_font::get_indexed_char_dimensions (size_t signed_idx) const SCM sym = ly_symbol2scm (name); SCM alist = scm_hashq_ref (lily_character_table_, sym, SCM_BOOL_F); - if (alist != SCM_BOOL_F) + if (scm_is_true (alist)) { SCM bbox = scm_cdr (scm_assq (ly_symbol2scm ("bbox"), alist)); @@ -337,7 +340,7 @@ Open_type_font::glyph_list () const warning (_f ("FT_Get_Glyph_Name () error: %s", freetype_error_string (code).c_str ())); - *tail = scm_cons (scm_from_locale_string (name), SCM_EOL); + *tail = scm_cons (scm_from_ascii_string (name), SCM_EOL); tail = SCM_CDRLOC (*tail); }