diff --git a/python/templates/macros/implementations.jinja2 b/python/templates/macros/implementations.jinja2 index 13a900935..b62fe35fa 100644 --- a/python/templates/macros/implementations.jinja2 +++ b/python/templates/macros/implementations.jinja2 @@ -23,7 +23,7 @@ Mutable{{ type }} {{ full_type }}::clone() const { {% for relation in multi_relations %} // If the current object has been read from a file, then the object may only have a slice of the relation vector // so this slice has to be copied in case we want to modify it - if (m_obj->data.{{ relation.name }}_end != m_obj->m_{{ relation.name }}->size()) { + if (m_obj->data.{{ relation.name }}_end - m_obj->data.{{ relation.name }}_begin != m_obj->m_{{ relation.name }}->size()) { tmp.m_obj->m_{{ relation.name }} = new std::vector<{{ relation.full_type }}>(m_obj->m_{{ relation.name }}->begin() + m_obj->data.{{ relation.name }}_begin, m_obj->m_{{ relation.name }}->begin() + m_obj->data.{{ relation.name }}_end); tmp.m_obj->data.{{ relation.name }}_begin = 0; tmp.m_obj->data.{{ relation.name }}_end = tmp.m_obj->m_{{ relation.name }}->size();