diff --git a/src/lib/marble/geodata/data/GeoDataPlacemark.cpp b/src/lib/marble/geodata/data/GeoDataPlacemark.cpp --- a/src/lib/marble/geodata/data/GeoDataPlacemark.cpp +++ b/src/lib/marble/geodata/data/GeoDataPlacemark.cpp @@ -269,8 +269,10 @@ if( p()->m_geometry ) { // Beware: comparison between pointers, not strings. - if (p()->m_geometry->nodeType() == GeoDataTypes::GeoDataPointType - || p()->m_geometry->nodeType() == GeoDataTypes::GeoDataPolygonType + if (p()->m_geometry->nodeType() == GeoDataTypes::GeoDataPointType) { + hasIcon = true; + coord = static_cast(p()->m_geometry)->coordinates(); + } else if (p()->m_geometry->nodeType() == GeoDataTypes::GeoDataPolygonType || p()->m_geometry->nodeType() == GeoDataTypes::GeoDataLinearRingType) { hasIcon = true; coord = p()->m_geometry->latLonAltBox().center();