diff --git a/eg/tween_demo.cpp b/eg/tween_demo.cpp index 4928548..ff4dd49 100644 --- a/eg/tween_demo.cpp +++ b/eg/tween_demo.cpp @@ -72,8 +72,10 @@ void test_Timeline() { // 4 tests ok(ticker.last_now == 1, "tick 1 now"); timeline.tick(3); - ok(ticker.tick_count == 2, "tick 1 count"); - ok(ticker.last_now == 3, "tick 1 now"); + ok(ticker.tick_count == 2, "tick 3 count"); + ok(ticker.last_now == 3, "tick 3 now"); + + timeline.unregister_ticker(&ticker); } // ----------------------------------------------------------------------------- diff --git a/src/Timeline.cpp b/src/Timeline.cpp index d4488a2..ec0016f 100644 --- a/src/Timeline.cpp +++ b/src/Timeline.cpp @@ -11,11 +11,13 @@ typedef LinearTweenForm LinearIntForm; typedef LinearTweenForm LinearFloatForm; Timeline::Timeline() : tickers() { - for (set::iterator it = tickers.begin(); it != tickers.end(); it++) - (*it)->stop(); } Timeline::~Timeline() { + for (set::iterator it = tickers.begin(); it != tickers.end(); it++) { + ITicker *ticker = *it; + ticker->stop(); + } } void Timeline::register_ticker(ITicker *ticker) {