Simplified the Constraint removal logic 72/27272/7
authorPaul Wisbey <p.wisbey@samsung.com>
Mon, 15 Sep 2014 10:36:03 +0000 (11:36 +0100)
committerPaul Wisbey <p.wisbey@samsung.com>
Mon, 15 Sep 2014 10:53:31 +0000 (11:53 +0100)
commit2aca6c3748a55a07b3fb937aae35117e7207ddcf
tree5bf1a41bc6e02d26505f2192d7fdb58fd4986608
parent9e4ec586b0b85f22460f68a22413be4308457ecd
Simplified the Constraint removal logic

[problem]      Memory corruption caused by unsafe calls to SetWeight
[cause]        The root cause is the Constraint using the ProxyObject::Observer interface
               for two different purposes; firstly to find out about parent on/off stage
               behavior, and also to track the objects providing property inputs.
[solution]     Reduced the complexity of the constraint logic; removed observer usage
               for the parent object, moved code from templates to common base class.
               Deprecated the (unused) SetRemoveTime API bloat.

Change-Id: I4d789143f4dc36767cbc91adf63d47f488c37e1b
14 files changed:
automated-tests/src/dali-internal/CMakeLists.txt
automated-tests/src/dali-internal/utc-Dali-Internal-Constraint.cpp [new file with mode: 0644]
automated-tests/src/dali/utc-Dali-Constraint.cpp
dali/internal/event/animation/active-constraint-base.cpp
dali/internal/event/animation/active-constraint-base.h
dali/internal/event/animation/active-constraint-impl.h
dali/internal/event/animation/constraint-impl.cpp
dali/internal/event/animation/constraint-impl.h
dali/internal/event/common/proxy-object.cpp
dali/internal/event/common/proxy-object.h
dali/internal/update/animation/scene-graph-constraint-base.cpp
dali/internal/update/animation/scene-graph-constraint-base.h
dali/public-api/animation/constraint.cpp
dali/public-api/animation/constraint.h