summaryrefslogtreecommitdiffstats
path: root/gfx/layers
diff options
context:
space:
mode:
Diffstat (limited to 'gfx/layers')
-rw-r--r--gfx/layers/AnimationInfo.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/gfx/layers/AnimationInfo.cpp b/gfx/layers/AnimationInfo.cpp
index 81d11f672c..ad43fd681f 100644
--- a/gfx/layers/AnimationInfo.cpp
+++ b/gfx/layers/AnimationInfo.cpp
@@ -494,11 +494,15 @@ void AnimationInfo::AddAnimationForProperty(
}
if (aAnimation->Pending()) {
- const TimeStamp readyTime =
- aFrame->PresContext()->RefreshDriver()->MostRecentRefresh(
- /* aEnsureTimerStarted= */ false);
- MOZ_ASSERT(!readyTime.IsNull());
- aAnimation->SetPendingReadyTime(readyTime);
+ TimeStamp readyTime = aAnimation->GetPendingReadyTime();
+ if (readyTime.IsNull()) {
+ // TODO(emilio): This should generally not happen anymore, can we remove
+ // this SetPendingReadyTime call?
+ readyTime = aFrame->PresContext()->RefreshDriver()->MostRecentRefresh(
+ /* aEnsureTimerStarted= */ false);
+ MOZ_ASSERT(!readyTime.IsNull());
+ aAnimation->SetPendingReadyTime(readyTime);
+ }
MaybeStartPendingAnimation(*animation, readyTime);
}
}