Author: toshok
Date: 2007-06-20 15:50:57 -0400 (Wed, 20 Jun 2007)
New Revision: 80354
Modified:
trunk/moon/src/ChangeLog
trunk/moon/src/clock.cpp
Log:
2007-06-20 Chris Toshok <[EMAIL PROTECTED]>
* clock.cpp (Clock::Tick): if we hit our natural duration but our
duration is Automatic, go to Fill mode, since we may have child
clocks that started after us and need a chance to run their last
tick.
Modified: trunk/moon/src/ChangeLog
===================================================================
--- trunk/moon/src/ChangeLog 2007-06-20 19:42:53 UTC (rev 80353)
+++ trunk/moon/src/ChangeLog 2007-06-20 19:50:57 UTC (rev 80354)
@@ -1,3 +1,10 @@
+2007-06-20 Chris Toshok <[EMAIL PROTECTED]>
+
+ * clock.cpp (Clock::Tick): if we hit our natural duration but our
+ duration is Automatic, go to Fill mode, since we may have child
+ clocks that started after us and need a chance to run their last
+ tick.
+
2007-06-20 Jeffrey Stedfast <[EMAIL PROTECTED]>
* runtime.cpp (collection_iterator_move_next): If we can't iterate
Modified: trunk/moon/src/clock.cpp
===================================================================
--- trunk/moon/src/clock.cpp 2007-06-20 19:42:53 UTC (rev 80353)
+++ trunk/moon/src/clock.cpp 2007-06-20 19:50:57 UTC (rev 80354)
@@ -336,7 +336,10 @@
printf (" + clock %p should STOP\n",
this, remaining_iterations);
#endif
new_time = duration_timespan;
- Stop ();
+ if (*duration == Duration::Automatic)
+ SkipToFill ();
+ else
+ Stop ();
}
else {
new_time -= duration_timespan;
@@ -352,7 +355,10 @@
if (remaining_iterations == 0) {
new_time = 0;
- Stop ();
+ if (*duration == Duration::Automatic)
+ SkipToFill ();
+ else
+ Stop ();
}
}
@@ -416,6 +422,9 @@
current_time = new_time = last_parent_time - GetBeginTime ();
+#if CLOCK_DEBUG
+ printf (" + it's current time at that point will be %lld\n",
current_time);
+#endif
if (natural_duration.HasTimeSpan ())
current_progress = new_progress = (double)current_time /
natural_duration.GetTimeSpan();
else
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches