diff --git a/folium/map.py b/folium/map.py index 83bacd42c..874bd902b 100644 --- a/folium/map.py +++ b/folium/map.py @@ -406,7 +406,6 @@ def __init__( # this attribute is not used by Marker, but by GeoJson self.icon = None if icon is not None: - self.add_child(icon) self.icon = icon if popup is not None: self.add_child(popup if isinstance(popup, Popup) else Popup(str(popup))) @@ -424,15 +423,11 @@ def _get_self_bounds(self) -> TypeBoundsReturn: return cast(TypeBoundsReturn, [self.location, self.location]) def render(self): - from .features import CustomIcon, DivIcon - if self.location is None: raise ValueError( f"{self._name} location must be assigned when added directly to map." ) - for child in list(self._children.values()): - if isinstance(child, (Icon, CustomIcon, DivIcon)): - self.add_child(self.SetIcon(marker=self, icon=child)) + self.add_child(self.SetIcon(marker=self, icon=self.icon)) super().render()