Diff
Modified: trunk/LayoutTests/ChangeLog (136683 => 136684)
--- trunk/LayoutTests/ChangeLog 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/LayoutTests/ChangeLog 2012-12-05 15:25:22 UTC (rev 136684)
@@ -1,3 +1,22 @@
+2012-12-05 Antoine Quint <[email protected]>
+
+ TextTrackCue's .endTime property should fire a TypeError when NaN is assigned
+ https://bugs.webkit.org/show_bug.cgi?id=103413
+
+ Reviewed by Eric Carlson.
+
+ Stop skipping two tests that now have new passing conditions, only held back from
+ passing altogether by https://bugs.webkit.org/show_bug.cgi?id=103258.
+
+ * media/track/opera/interfaces/TextTrackCue/endTime-expected.txt: Added.
+ * media/track/opera/interfaces/TextTrackCue/startTime-expected.txt: Added.
+ * platform/chromium/TestExpectations:
+ * platform/efl/TestExpectations:
+ * platform/gtk/TestExpectations:
+ * platform/mac/TestExpectations:
+ * platform/qt/TestExpectations:
+ * platform/win/TestExpectations:
+
2012-12-05 Alexis Menard <[email protected]>
[CSS3 Backgrounds and Borders] Allow the CSS3 background position offset for background shorthand.
Added: trunk/LayoutTests/media/track/opera/interfaces/TextTrackCue/endTime-expected.txt (0 => 136684)
--- trunk/LayoutTests/media/track/opera/interfaces/TextTrackCue/endTime-expected.txt (rev 0)
+++ trunk/LayoutTests/media/track/opera/interfaces/TextTrackCue/endTime-expected.txt 2012-12-05 15:25:22 UTC (rev 136684)
@@ -0,0 +1,4 @@
+
+PASS TextTrackCue.endTime, script-created cue
+TIMEOUT TextTrackCue.endTime, parsed cue Test timed out
+
Added: trunk/LayoutTests/media/track/opera/interfaces/TextTrackCue/startTime-expected.txt (0 => 136684)
--- trunk/LayoutTests/media/track/opera/interfaces/TextTrackCue/startTime-expected.txt (rev 0)
+++ trunk/LayoutTests/media/track/opera/interfaces/TextTrackCue/startTime-expected.txt 2012-12-05 15:25:22 UTC (rev 136684)
@@ -0,0 +1,4 @@
+
+PASS TextTrackCue.startTime, script-created cue
+TIMEOUT TextTrackCue.startTime, parsed cue Test timed out
+
Modified: trunk/LayoutTests/platform/chromium/TestExpectations (136683 => 136684)
--- trunk/LayoutTests/platform/chromium/TestExpectations 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/LayoutTests/platform/chromium/TestExpectations 2012-12-05 15:25:22 UTC (rev 136684)
@@ -3010,7 +3010,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/constructor.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/createEvent.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/align.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/endTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/id.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/getCueAsHTML.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/line.html [ Skip ]
@@ -3018,7 +3017,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/onexit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/pauseOnExit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/snapToLines.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/startTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/text.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/track.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/vertical.html [ Skip ]
Modified: trunk/LayoutTests/platform/efl/TestExpectations (136683 => 136684)
--- trunk/LayoutTests/platform/efl/TestExpectations 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/LayoutTests/platform/efl/TestExpectations 2012-12-05 15:25:22 UTC (rev 136684)
@@ -728,7 +728,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/constructor.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/createEvent.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/align.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/endTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/id.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/getCueAsHTML.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/line.html [ Skip ]
@@ -736,7 +735,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/onexit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/pauseOnExit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/snapToLines.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/startTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/text.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/track.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/vertical.html [ Skip ]
Modified: trunk/LayoutTests/platform/gtk/TestExpectations (136683 => 136684)
--- trunk/LayoutTests/platform/gtk/TestExpectations 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/LayoutTests/platform/gtk/TestExpectations 2012-12-05 15:25:22 UTC (rev 136684)
@@ -547,7 +547,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/constructor.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/createEvent.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/align.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/endTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/id.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/getCueAsHTML.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/line.html [ Skip ]
@@ -555,7 +554,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/onexit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/pauseOnExit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/snapToLines.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/startTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/text.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/track.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/vertical.html [ Skip ]
Modified: trunk/LayoutTests/platform/mac/TestExpectations (136683 => 136684)
--- trunk/LayoutTests/platform/mac/TestExpectations 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2012-12-05 15:25:22 UTC (rev 136684)
@@ -484,7 +484,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/constructor.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/createEvent.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/align.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/endTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/id.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/getCueAsHTML.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/line.html [ Skip ]
@@ -492,7 +491,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/onexit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/pauseOnExit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/snapToLines.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/startTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/text.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/track.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/vertical.html [ Skip ]
Modified: trunk/LayoutTests/platform/qt/TestExpectations (136683 => 136684)
--- trunk/LayoutTests/platform/qt/TestExpectations 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/LayoutTests/platform/qt/TestExpectations 2012-12-05 15:25:22 UTC (rev 136684)
@@ -910,7 +910,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/constructor.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/createEvent.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/align.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/endTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/id.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/getCueAsHTML.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/line.html [ Skip ]
@@ -918,7 +917,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/onexit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/pauseOnExit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/snapToLines.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/startTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/text.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/track.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/vertical.html [ Skip ]
Modified: trunk/LayoutTests/platform/win/TestExpectations (136683 => 136684)
--- trunk/LayoutTests/platform/win/TestExpectations 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/LayoutTests/platform/win/TestExpectations 2012-12-05 15:25:22 UTC (rev 136684)
@@ -1571,7 +1571,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/constructor.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TrackEvent/createEvent.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/align.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/endTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/id.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/getCueAsHTML.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/line.html [ Skip ]
@@ -1579,7 +1578,6 @@
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/onexit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/pauseOnExit.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/snapToLines.html [ Skip ]
-webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/startTime.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/text.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/track.html [ Skip ]
webkit.org/b/103926 media/track/opera/interfaces/TextTrackCue/vertical.html [ Skip ]
Modified: trunk/Source/WebCore/ChangeLog (136683 => 136684)
--- trunk/Source/WebCore/ChangeLog 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/Source/WebCore/ChangeLog 2012-12-05 15:25:22 UTC (rev 136684)
@@ -1,3 +1,23 @@
+2012-12-05 Antoine Quint <[email protected]>
+
+ TextTrackCue's .endTime property should fire a TypeError when NaN is assigned
+ https://bugs.webkit.org/show_bug.cgi?id=103413
+
+ Reviewed by Eric Carlson.
+
+ Check whether the new time passed to setStartTime() and setEndTime() is none of NaN or Infinity,
+ otherwise throwing a TypeError.
+
+ Thanks to this fix, we're no longer skipping media/track/opera/interfaces/TextTrackCue/endTime.html and
+ media/track/opera/interfaces/TextTrackCue/startTime.html.
+
+ * html/track/TextTrackCue.cpp:
+ (WebCore::TextTrackCue::setStartTime):
+ (WebCore::TextTrackCue::setEndTime):
+ * html/track/TextTrackCue.h:
+ (TextTrackCue):
+ * html/track/TextTrackCue.idl:
+
2012-12-05 Alexis Menard <[email protected]>
[CSS3 Backgrounds and Borders] Allow the CSS3 background position offset for background shorthand.
Modified: trunk/Source/WebCore/html/track/TextTrackCue.cpp (136683 => 136684)
--- trunk/Source/WebCore/html/track/TextTrackCue.cpp 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/Source/WebCore/html/track/TextTrackCue.cpp 2012-12-05 15:25:22 UTC (rev 136684)
@@ -46,6 +46,7 @@
#include "TextTrack.h"
#include "TextTrackCueList.h"
#include "WebVTTParser.h"
+#include <wtf/MathExtras.h>
#include <wtf/text/StringBuilder.h>
namespace WebCore {
@@ -266,8 +267,14 @@
cueDidChange();
}
-void TextTrackCue::setStartTime(double value)
+void TextTrackCue::setStartTime(double value, ExceptionCode& ec)
{
+ // NaN, Infinity and -Infinity values should trigger a TypeError.
+ if (isinf(value) || isnan(value)) {
+ ec = TypeError;
+ return;
+ }
+
// TODO(93143): Add spec-compliant behavior for negative time values.
if (m_startTime == value || value < 0)
return;
@@ -277,8 +284,14 @@
cueDidChange();
}
-void TextTrackCue::setEndTime(double value)
+void TextTrackCue::setEndTime(double value, ExceptionCode& ec)
{
+ // NaN, Infinity and -Infinity values should trigger a TypeError.
+ if (isinf(value) || isnan(value)) {
+ ec = TypeError;
+ return;
+ }
+
// TODO(93143): Add spec-compliant behavior for negative time values.
if (m_endTime == value || value < 0)
return;
Modified: trunk/Source/WebCore/html/track/TextTrackCue.h (136683 => 136684)
--- trunk/Source/WebCore/html/track/TextTrackCue.h 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/Source/WebCore/html/track/TextTrackCue.h 2012-12-05 15:25:22 UTC (rev 136684)
@@ -90,10 +90,10 @@
void setId(const String&);
double startTime() const { return m_startTime; }
- void setStartTime(double);
+ void setStartTime(double, ExceptionCode&);
double endTime() const { return m_endTime; }
- void setEndTime(double);
+ void setEndTime(double, ExceptionCode&);
bool pauseOnExit() const { return m_pauseOnExit; }
void setPauseOnExit(bool);
Modified: trunk/Source/WebCore/html/track/TextTrackCue.idl (136683 => 136684)
--- trunk/Source/WebCore/html/track/TextTrackCue.idl 2012-12-05 15:10:32 UTC (rev 136683)
+++ trunk/Source/WebCore/html/track/TextTrackCue.idl 2012-12-05 15:25:22 UTC (rev 136684)
@@ -36,8 +36,10 @@
readonly attribute TextTrack track;
attribute DOMString id;
- attribute double startTime;
- attribute double endTime;
+ attribute double startTime
+ setter raises (DOMException);
+ attribute double endTime
+ setter raises (DOMException);
attribute boolean pauseOnExit;
attribute DOMString vertical