Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(253)

Side by Side Diff: Source/WebCore/svg/animation/SVGSMILElement.cpp

Issue 10802091: Merge 122755 - SVGAnimationElement::currentValuesForValuesAnimation crash (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/1180/
Patch Set: Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « LayoutTests/svg/animations/smil-setcurrenttime-crash-expected.txt ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2008 Apple Inc. All rights reserved. 2 * Copyright (C) 2008 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 1027 matching lines...) Expand 10 before | Expand all | Expand 10 after
1038 m_previousIntervalBegin = m_intervalBegin; 1038 m_previousIntervalBegin = m_intervalBegin;
1039 1039
1040 if (m_isWaitingForFirstInterval) { 1040 if (m_isWaitingForFirstInterval) {
1041 m_isWaitingForFirstInterval = false; 1041 m_isWaitingForFirstInterval = false;
1042 resolveFirstInterval(); 1042 resolveFirstInterval();
1043 } 1043 }
1044 1044
1045 // This call may obtain a new interval -- never call calculateAnimationPerce ntAndRepeat() before! 1045 // This call may obtain a new interval -- never call calculateAnimationPerce ntAndRepeat() before!
1046 if (seekToTime) { 1046 if (seekToTime) {
1047 seekToIntervalCorrespondingToTime(elapsed); 1047 seekToIntervalCorrespondingToTime(elapsed);
1048 ASSERT(elapsed >= m_intervalBegin); 1048 if (elapsed < m_intervalBegin) {
1049 // elapsed is not within an interval.
1050 m_nextProgressTime = m_intervalBegin;
1051 return false;
1052 }
1049 } 1053 }
1050 1054
1051 unsigned repeat = 0; 1055 unsigned repeat = 0;
1052 float percent = calculateAnimationPercentAndRepeat(elapsed, repeat); 1056 float percent = calculateAnimationPercentAndRepeat(elapsed, repeat);
1053 checkRestart(elapsed); 1057 checkRestart(elapsed);
1054 1058
1055 ActiveState oldActiveState = m_activeState; 1059 ActiveState oldActiveState = m_activeState;
1056 m_activeState = determineActiveState(elapsed); 1060 m_activeState = determineActiveState(elapsed);
1057 bool animationIsContributing = isContributing(elapsed); 1061 bool animationIsContributing = isContributing(elapsed);
1058 1062
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
1148 1152
1149 void SVGSMILElement::endedActiveInterval() 1153 void SVGSMILElement::endedActiveInterval()
1150 { 1154 {
1151 clearTimesWithDynamicOrigins(m_beginTimes); 1155 clearTimesWithDynamicOrigins(m_beginTimes);
1152 clearTimesWithDynamicOrigins(m_endTimes); 1156 clearTimesWithDynamicOrigins(m_endTimes);
1153 } 1157 }
1154 1158
1155 } 1159 }
1156 1160
1157 #endif 1161 #endif
OLDNEW
« no previous file with comments | « LayoutTests/svg/animations/smil-setcurrenttime-crash-expected.txt ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698