only serialize Parameters if one or more exist
This commit is contained in:
parent
9203639640
commit
410dea5001
1 changed files with 15 additions and 13 deletions
|
@ -793,19 +793,21 @@ class serialize_type : public boost::static_visitor<>
|
||||||
|
|
||||||
void serialize_parameters( ptree & map_node, mapnik::parameters const& params)
|
void serialize_parameters( ptree & map_node, mapnik::parameters const& params)
|
||||||
{
|
{
|
||||||
ptree & params_node = map_node.push_back(
|
if (params.size()) {
|
||||||
ptree::value_type("Parameters", ptree()))->second;
|
ptree & params_node = map_node.push_back(
|
||||||
|
ptree::value_type("Parameters", ptree()))->second;
|
||||||
|
|
||||||
parameters::const_iterator it = params.begin();
|
parameters::const_iterator it = params.begin();
|
||||||
parameters::const_iterator end = params.end();
|
parameters::const_iterator end = params.end();
|
||||||
for (; it != end; ++it)
|
for (; it != end; ++it)
|
||||||
{
|
{
|
||||||
boost::property_tree::ptree & param_node = params_node.push_back(
|
boost::property_tree::ptree & param_node = params_node.push_back(
|
||||||
boost::property_tree::ptree::value_type("Parameter",
|
boost::property_tree::ptree::value_type("Parameter",
|
||||||
boost::property_tree::ptree()))->second;
|
boost::property_tree::ptree()))->second;
|
||||||
param_node.put("<xmlattr>.name", it->first );
|
param_node.put("<xmlattr>.name", it->first );
|
||||||
param_node.put_value( it->second );
|
param_node.put_value( it->second );
|
||||||
boost::apply_visitor(serialize_type(param_node),it->second);
|
boost::apply_visitor(serialize_type(param_node),it->second);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue