From 57b835419b96bdacd26984a4a5d1b20249ed8ea0 Mon Sep 17 00:00:00 2001 From: Hermann Kraus Date: Sun, 12 Feb 2012 11:34:28 +0100 Subject: [PATCH] Fix font-set handling for ShieldSymbolizer. Closes #1077. Was the same problem as #1064. --- src/load_map.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/load_map.cpp b/src/load_map.cpp index b4f65bf11..ab24ded52 100644 --- a/src/load_map.cpp +++ b/src/load_map.cpp @@ -1355,7 +1355,9 @@ void map_parser::parse_shield_symbolizer( rule & rule, ptree const & sym ) } placement_finder->properties.from_xml(sym, fontsets_); - if (strict_) ensure_font_face(placement_finder->properties.default_format.face_name); + if (strict_ && + !placement_finder->properties.default_format.fontset.size()) + ensure_font_face(placement_finder->properties.default_format.face_name); if (list) { ptree::const_iterator symIter = sym.begin(); ptree::const_iterator endSym = sym.end(); @@ -1369,7 +1371,9 @@ void map_parser::parse_shield_symbolizer( rule & rule, ptree const & sym ) ensure_attrs(symIter->second, "TextSymbolizer/Placement", s_common); text_symbolizer_properties & p = list->add(); p.from_xml(symIter->second, fontsets_); - if (strict_) ensure_font_face(p.default_format.face_name); + if (strict_&& + !placement_finder->properties.default_format.fontset.size()) + ensure_font_face(p.default_format.face_name); } }