X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fanimation.cpp;h=ab9d6e6085c35a36d1f430b652586411e7849047;hp=02a2d371c71c1d32baff99aa3a120429d8c90d91;hb=abb4e50bdbb6d62d7e6ee249d52353ccf22762a4;hpb=8d8b80f3c1511b37f030d897ad97b92993a03ca2 diff --git a/source/animation.cpp b/source/animation.cpp index 02a2d371..ab9d6e60 100644 --- a/source/animation.cpp +++ b/source/animation.cpp @@ -1,7 +1,6 @@ #include #include #include -#include #include "animation.h" #include "animationeventobserver.h" #include "armature.h" @@ -78,9 +77,10 @@ void Animation::add_keyframe(const Time::TimeDelta &t, const RefPtr1) + if(keyframes.size()>1 && t>(&tkf-1)->time) tkf.prev = &tkf-1; prepare_keyframe(tkf); @@ -272,7 +272,10 @@ Animation::Iterator::Iterator(const Animation &a): event_iter(animation->events.begin()), x(0), end(false) -{ } +{ + if(iter==animation->keyframes.end()) + throw invalid_argument("Animation::Iterator::Iterator"); +} Animation::Iterator &Animation::Iterator::operator+=(const Time::TimeDelta &t) {