diff --git a/src/App/PropertyExpressionEngine.cpp b/src/App/PropertyExpressionEngine.cpp index 00b02935f..ed641e7b6 100644 --- a/src/App/PropertyExpressionEngine.cpp +++ b/src/App/PropertyExpressionEngine.cpp @@ -110,7 +110,7 @@ Property *PropertyExpressionEngine::Copy() const PropertyExpressionEngine * engine = new PropertyExpressionEngine(); for (ExpressionMap::const_iterator it = expressions.begin(); it != expressions.end(); ++it) - engine->expressions[it->first] = ExpressionInfo(it->second); + engine->expressions[it->first] = ExpressionInfo(boost::shared_ptr(it->second.expression->copy()), it->second.comment.c_str()); engine->validator = validator; @@ -125,7 +125,7 @@ void PropertyExpressionEngine::Paste(const Property &from) expressions.clear(); for (ExpressionMap::const_iterator it = fromee->expressions.begin(); it != fromee->expressions.end(); ++it) { - expressions[it->first] = ExpressionInfo(it->second); + expressions[it->first] = ExpressionInfo(boost::shared_ptr(it->second.expression->copy()), it->second.comment.c_str()); expressionChanged(it->first); }