You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A proper implementation of the copy constructor and/or assignment operator of many classes of libember is missing. Futhermore, most of the classes are deriving from libember::dom::Node and offers thereby the virtual clone() method. This method is not properly overriden at many places.
Beside lacking the feature to copy an Ember+ tree, it's erroneous and causes runtime problems (memory leaks, double delete, wrong parent relationship...). Either implement the copy constructor and assignment operator correctly of these types or pohibite copy/assignment.
I strongly recommend to implement them, because there are use cases for it, like implementing a proxy which forwards Ember+ messages - right now, cloning messages is an extra task, which has be done outside the library. This causes major maintainability troubles.
Examples of wrong copy constructor / assignment operator are found in nearly every Glow type, e. g. libember::glow::GlowNode (and the whole hierarchy upwards).
The text was updated successfully, but these errors were encountered:
A proper implementation of the copy constructor and/or assignment operator of many classes of libember is missing. Futhermore, most of the classes are deriving from
libember::dom::Node
and offers thereby the virtualclone()
method. This method is not properly overriden at many places.Beside lacking the feature to copy an Ember+ tree, it's erroneous and causes runtime problems (memory leaks, double delete, wrong parent relationship...). Either implement the copy constructor and assignment operator correctly of these types or pohibite copy/assignment.
I strongly recommend to implement them, because there are use cases for it, like implementing a proxy which forwards Ember+ messages - right now, cloning messages is an extra task, which has be done outside the library. This causes major maintainability troubles.
Examples of wrong copy constructor / assignment operator are found in nearly every Glow type, e. g.
libember::glow::GlowNode
(and the whole hierarchy upwards).The text was updated successfully, but these errors were encountered: