gecko/layout
Brian Birtles 51fed648c3 Bug 1052147 - Initialize AnimationPlayer::mPlayState to running state; r=dbaron
The assertion in nsTimeStamp::operator >= occasionally fails due to a null RHS
timestamp when called from AnimationPlayer::GetCurrentTimeDuration, which, in
turn, is called from AnimationPlayer::SetSource.

The issue appears to be that we're not correctly initializing
AnimationPlayer.mPlayState. This value can be running (0) or paused (1) but we
only ever compare against the paused state (i.e. every other value is
effectively treated as running). If we don't initialize this we can end
up in the paused state but with mPauseStart not set to a valid (non-null)
TimeStamp. This creates an inconsistent state since we assume that when we're
paused mPauseStart is non-null, hence the assertion fails.

This gets tickled because, since bug 1040543, we call
AnimationPlayer::SetSource from nsAnimationManager::BuildAnimations *before* we
set mPlayState and mPauseStart.

This patch initializes mPlayState to the running state so we don't accidentally
end up in an inconsistent state.

It also removes some (now unnecessary) initialization of mPlayState and
mPauseStart from nsTransitionManager::ConsiderStartingTransition.

In future we could also consider reworking nsAnimationManager::BuildAnimations
so that we call SetSource on the new animation player *after* setting up its
play state. That may be more correct and would further avoid this problem but
may not be necessary since all that code is likely to change in the near future.
2014-08-13 18:21:45 +09:00
..
analysis
base Bug 1019693 - Always use tiled thebes layers when we're a descendant of a layer with a critical display port so that the low-resolution drawing area is handled correctly. r=tn 2014-08-08 09:12:01 +12:00
build Backed out changeset 05e4c47f1e98 (bug 1036186) for Mulet mochitest bustage. 2014-08-08 13:29:28 -04:00
doc
forms Bug 1049010, layout should use composed doc, not current doc in many cases, r=wchen 2014-08-06 02:23:54 +03:00
generic Bug 981924 - Update ReportToConsole calls in layout code to use the right category. r=dbaron 2014-08-11 16:52:01 -07:00
inspector Bug 1048780 - Call the standard matches() rather than the proprietary mozMatchesSelector(); r=jst 2014-08-12 14:30:59 +02:00
ipc Bug 952977: More gfx::Matrix cleanup in LayerManagerComposite r=nical 2014-08-01 08:31:47 -04:00
mathml Bug 981924 - Update ReportToConsole calls in layout code to use the right category. r=dbaron 2014-08-11 16:52:01 -07:00
media Bug 1047267 - Move remaining OS_LIBS and EXTRA_LIBS to moz.build. r=gps 2014-08-07 14:21:03 +09:00
printing Bug 1048246 - Fix more bad implicit constructors in layout; r=roc 2014-08-07 19:48:38 -04:00
reftests Bug 1048780 - Call the standard matches() rather than the proprietary mozMatchesSelector(); r=jst 2014-08-12 14:30:59 +02:00
style Bug 1052147 - Initialize AnimationPlayer::mPlayState to running state; r=dbaron 2014-08-13 18:21:45 +09:00
svg Bug 1050009 - Initialize pldhash tables with a length, not a capacity. r=roc. 2014-08-06 06:31:21 -07:00
tables Bug 1051147 - Fix overflow area handling in nsTableRowFrame::DidSize. r=smontagu 2014-08-11 16:52:01 -07:00
tools Bug 1042097 - Upload Android tombstones to blobber; r=dminor 2014-08-11 11:55:28 -06:00
xul Bug 1047509 - Part 12: Remove nsCxPusher in nsTextBoxFrame::UpdateAccesskey. r=bholley 2014-08-07 19:46:36 +01:00
moz.build Bug 1043820 - Remove PARALLEL_DIRS. r=gps 2014-07-29 08:57:59 +09:00