diff --git a/ApplicationLibCode/UserInterface/RiuGuiTheme.cpp b/ApplicationLibCode/UserInterface/RiuGuiTheme.cpp index 76bc1087a8..0c2b912b83 100644 --- a/ApplicationLibCode/UserInterface/RiuGuiTheme.cpp +++ b/ApplicationLibCode/UserInterface/RiuGuiTheme.cpp @@ -360,7 +360,12 @@ void RiuGuiTheme::updateGuiTheme( RiaDefines::ThemeEnum theme ) widget->style()->polish( widget ); if ( caf::PdmUiTreeViewWidget* treeViewWidget = dynamic_cast( widget ) ) { - treeViewWidget->setStyle( new caf::PdmUiTreeViewStyle ); + // Only set a new style if the widget doesn't already have a PdmUiTreeViewStyle + // to prevent memory leaks from repeatedly creating new styles + if ( !dynamic_cast( treeViewWidget->style() ) ) + { + treeViewWidget->setStyle( new caf::PdmUiTreeViewStyle ); + } } } }