[html5] r8461 - [giow] (0) Reword the track processing model to be sane. Fixing https://www.w3.o [...]
whatwg at whatwg.org
whatwg at whatwg.org
Tue Feb 4 13:10:48 PST 2014
Author: ianh
Date: 2014-02-04 13:10:47 -0800 (Tue, 04 Feb 2014)
New Revision: 8461
Modified:
complete.html
index
source
Log:
[giow] (0) Reword the track processing model to be sane.
Fixing https://www.w3.org/Bugs/Public/show_bug.cgi?id=24487
Affected topics: Video Text Tracks
Modified: complete.html
===================================================================
--- complete.html 2014-02-04 20:01:25 UTC (rev 8460)
+++ complete.html 2014-02-04 21:10:47 UTC (rev 8461)
@@ -29780,49 +29780,27 @@
field, the recipient MAY attempt to guess the media type via inspection of its content
and<!---->/<!---->or the name extension(s) of the URI used to identify the resource.").</p>
- <p>If the <a href=#fetch title=fetch>fetching algorithm</a> fails for any reason (network error, the
- server returns an error code, a cross-origin check fails, etc), if <var title="">URL</var> is
- the empty string, or if the <!--sniffed--> type of the resource is not a supported text track
- format, then run these steps:</p>
+ <p>If the <a href=#fetch title=fetch>fetching algorithm</a> fails for any reason (network error,
+ the server returns an error code, a cross-origin check fails, etc), or if <var title="">URL</var> is the empty string, then <a href=#queue-a-task>queue a task</a> to first change the
+ <a href=#text-track-readiness-state>text track readiness state</a> to <a href=#text-track-failed-to-load title="text track failed to load">failed to
+ load</a> and then <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error><a href=#event-error>error</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
- <ol><li><p><a href=#queue-a-task>Queue a task</a> to first change the <a href=#text-track-readiness-state>text track readiness state</a> to
- <a href=#text-track-failed-to-load title="text track failed to load">failed to load</a> and then <a href=#fire-a-simple-event>fire a simple
- event</a> named <code title=event-error><a href=#event-error>error</a></code> at the <code><a href=#the-track-element>track</a></code>
- element.</li>
+ <p>If the <a href=#fetch title=fetch>fetching algorithm</a> does not fail, but the <!--sniffed-->
+ type of the resource is not a supported text track format, or the file was not successfully
+ processed (e.g. the format in question is an XML format and the file contained a well-formedness
+ error that the XML specification requires be detected and reported to the application), then the
+ <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> by the
+ <a href=#networking-task-source>networking task source</a> in which the aforementioned problem is found must change the
+ <a href=#text-track-readiness-state>text track readiness state</a> to <a href=#text-track-failed-to-load title="text track failed to load">failed to
+ load</a> and <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error><a href=#event-error>error</a></code>
+ at the <code><a href=#the-track-element>track</a></code> element.</p>
- <li><p>Wait until the <a href=#text-track-readiness-state>text track readiness state</a> is no longer set to <a href=#text-track-loading title="text track loading">loading</a>.</li>
+ <p>If the <a href=#fetch title=fetch>fetching algorithm</a> does not fail, and the file was
+ successfully processed, then the final <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> by the <a href=#networking-task-source>networking task source</a>, after it has
+ finished parsing the data, must change the <a href=#text-track-readiness-state>text track readiness state</a> to <a href=#text-track-loaded title="text track loaded">loaded</a>, and <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-load><a href=#event-load>load</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
- <li><p>Wait until the <a href=#track-url>track URL</a> is no longer equal to <var title="">URL</var>, at
- the same time as the <a href=#text-track-mode>text track mode</a> is set to <a href=#text-track-hidden title="text track
- hidden">hidden</a> or <a href=#text-track-showing title="text track showing">showing</a>.</li>
+ <p>If, while the <a href=#fetch title=fetch>fetching algorithm</a> is active, either:</p>
- <li><p>Jump to the step labeled <i>top</i>.</li>
-
- </ol><p>If the <a href=#fetch title=fetch>fetching algorithm</a> does not fail, then the final <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> by the
- <a href=#networking-task-source>networking task source</a> must run the following steps after it has tried to parse the
- data:</p>
-
- <ol><li><p>Change the <a href=#text-track-readiness-state>text track readiness state</a> to <a href=#text-track-loaded title="text track
- loaded">loaded</a>.</li>
-
- <li>
-
- <p>If the file was successfully processed, <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-load><a href=#event-load>load</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
-
- <p>Otherwise, the file was not successfully processed (e.g. the format in question is an XML
- format and the file contained a well-formedness error that the XML specification requires be
- detected and reported to the application); <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error><a href=#event-error>error</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
-
- </li>
-
- <li><p>Wait until the <a href=#track-url>track URL</a> is no longer equal to <var title="">URL</var>, at
- the same time as the <a href=#text-track-mode>text track mode</a> is set to <a href=#text-track-hidden title="text track
- hidden">hidden</a> or <a href=#text-track-showing title="text track showing">showing</a>.</li>
-
- <li><p>Jump back to the step labeled <i>top</i>.</li>
-
- </ol><p>If, while the <a href=#fetch title=fetch>fetching algorithm</a> is active, either:</p>
-
<ul><li>the <a href=#track-url>track URL</a> changes so that it is no longer equal to <var title="">URL</var>, while the <a href=#text-track-mode>text track mode</a> is set to <a href=#text-track-hidden title="text track
hidden">hidden</a> or <a href=#text-track-showing title="text track showing">showing</a>; or</li>
@@ -29830,17 +29808,22 @@
or <a href=#text-track-showing title="text track showing">showing</a>, while the <a href=#track-url>track URL</a> is not
equal to <var title="">URL</var></li>
- </ul><p>...then the user agent must run the following steps:</p>
+ </ul><p>...then the user agent must abort the <a href=#fetch title=fetch>fetching algorithm</a>,
+ discarding any pending <a href=#concept-task title=concept-task>tasks</a> generated by that algorithm (and
+ in particular, not adding any cues to the <a href=#text-track-list-of-cues>text track list of cues</a> after the moment
+ the URL changed), and then <a href=#queue-a-task>queue a task</a> that first changes the <a href=#text-track-readiness-state>text track
+ readiness state</a> to <a href=#text-track-failed-to-load title="text track failed to load">failed to load</a> and
+ then <a href=#fire-a-simple-event title="fire a simple event">fires a simple event</a> named <code title=event-error><a href=#event-error>error</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
- <ol><li><p>Abort the <a href=#fetch title=fetch>fetching algorithm</a>, discarding any pending <a href=#concept-task title=concept-task>tasks</a> generated by that algorithm (and in particular, not adding
- any cues to the <a href=#text-track-list-of-cues>text track list of cues</a> after the moment the URL
- changed).</li>
+ </li>
- <li><p>Jump back to the step labeled <i>top</i>.</li>
+ <li><p>Wait until the <a href=#text-track-readiness-state>text track readiness state</a> is no longer set to <a href=#text-track-loading title="text track loading">loading</a>.</li>
- </ol><p>Until one of the above circumstances occurs, the user agent must remain on this step.</p>
+ <li><p>Wait until the <a href=#track-url>track URL</a> is no longer equal to <var title="">URL</var>, at
+ the same time as the <a href=#text-track-mode>text track mode</a> is set to <a href=#text-track-hidden title="text track
+ hidden">hidden</a> or <a href=#text-track-showing title="text track showing">showing</a>.</li>
- </li>
+ <li><p>Jump to the step labeled <i>top</i>.</li>
</ol><p>Whenever a <code><a href=#the-track-element>track</a></code> element has its <code title=attr-track-src><a href=#attr-track-src>src</a></code> attribute
set, changed, or removed, the user agent must synchronously empty the element's <a href=#text-track>text
Modified: index
===================================================================
--- index 2014-02-04 20:01:25 UTC (rev 8460)
+++ index 2014-02-04 21:10:47 UTC (rev 8461)
@@ -29780,49 +29780,27 @@
field, the recipient MAY attempt to guess the media type via inspection of its content
and<!---->/<!---->or the name extension(s) of the URI used to identify the resource.").</p>
- <p>If the <a href=#fetch title=fetch>fetching algorithm</a> fails for any reason (network error, the
- server returns an error code, a cross-origin check fails, etc), if <var title="">URL</var> is
- the empty string, or if the <!--sniffed--> type of the resource is not a supported text track
- format, then run these steps:</p>
+ <p>If the <a href=#fetch title=fetch>fetching algorithm</a> fails for any reason (network error,
+ the server returns an error code, a cross-origin check fails, etc), or if <var title="">URL</var> is the empty string, then <a href=#queue-a-task>queue a task</a> to first change the
+ <a href=#text-track-readiness-state>text track readiness state</a> to <a href=#text-track-failed-to-load title="text track failed to load">failed to
+ load</a> and then <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error><a href=#event-error>error</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
- <ol><li><p><a href=#queue-a-task>Queue a task</a> to first change the <a href=#text-track-readiness-state>text track readiness state</a> to
- <a href=#text-track-failed-to-load title="text track failed to load">failed to load</a> and then <a href=#fire-a-simple-event>fire a simple
- event</a> named <code title=event-error><a href=#event-error>error</a></code> at the <code><a href=#the-track-element>track</a></code>
- element.</li>
+ <p>If the <a href=#fetch title=fetch>fetching algorithm</a> does not fail, but the <!--sniffed-->
+ type of the resource is not a supported text track format, or the file was not successfully
+ processed (e.g. the format in question is an XML format and the file contained a well-formedness
+ error that the XML specification requires be detected and reported to the application), then the
+ <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> by the
+ <a href=#networking-task-source>networking task source</a> in which the aforementioned problem is found must change the
+ <a href=#text-track-readiness-state>text track readiness state</a> to <a href=#text-track-failed-to-load title="text track failed to load">failed to
+ load</a> and <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error><a href=#event-error>error</a></code>
+ at the <code><a href=#the-track-element>track</a></code> element.</p>
- <li><p>Wait until the <a href=#text-track-readiness-state>text track readiness state</a> is no longer set to <a href=#text-track-loading title="text track loading">loading</a>.</li>
+ <p>If the <a href=#fetch title=fetch>fetching algorithm</a> does not fail, and the file was
+ successfully processed, then the final <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> by the <a href=#networking-task-source>networking task source</a>, after it has
+ finished parsing the data, must change the <a href=#text-track-readiness-state>text track readiness state</a> to <a href=#text-track-loaded title="text track loaded">loaded</a>, and <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-load><a href=#event-load>load</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
- <li><p>Wait until the <a href=#track-url>track URL</a> is no longer equal to <var title="">URL</var>, at
- the same time as the <a href=#text-track-mode>text track mode</a> is set to <a href=#text-track-hidden title="text track
- hidden">hidden</a> or <a href=#text-track-showing title="text track showing">showing</a>.</li>
+ <p>If, while the <a href=#fetch title=fetch>fetching algorithm</a> is active, either:</p>
- <li><p>Jump to the step labeled <i>top</i>.</li>
-
- </ol><p>If the <a href=#fetch title=fetch>fetching algorithm</a> does not fail, then the final <a href=#concept-task title=concept-task>task</a> that is <a href=#queue-a-task title="queue a task">queued</a> by the
- <a href=#networking-task-source>networking task source</a> must run the following steps after it has tried to parse the
- data:</p>
-
- <ol><li><p>Change the <a href=#text-track-readiness-state>text track readiness state</a> to <a href=#text-track-loaded title="text track
- loaded">loaded</a>.</li>
-
- <li>
-
- <p>If the file was successfully processed, <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-load><a href=#event-load>load</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
-
- <p>Otherwise, the file was not successfully processed (e.g. the format in question is an XML
- format and the file contained a well-formedness error that the XML specification requires be
- detected and reported to the application); <a href=#fire-a-simple-event>fire a simple event</a> named <code title=event-error><a href=#event-error>error</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
-
- </li>
-
- <li><p>Wait until the <a href=#track-url>track URL</a> is no longer equal to <var title="">URL</var>, at
- the same time as the <a href=#text-track-mode>text track mode</a> is set to <a href=#text-track-hidden title="text track
- hidden">hidden</a> or <a href=#text-track-showing title="text track showing">showing</a>.</li>
-
- <li><p>Jump back to the step labeled <i>top</i>.</li>
-
- </ol><p>If, while the <a href=#fetch title=fetch>fetching algorithm</a> is active, either:</p>
-
<ul><li>the <a href=#track-url>track URL</a> changes so that it is no longer equal to <var title="">URL</var>, while the <a href=#text-track-mode>text track mode</a> is set to <a href=#text-track-hidden title="text track
hidden">hidden</a> or <a href=#text-track-showing title="text track showing">showing</a>; or</li>
@@ -29830,17 +29808,22 @@
or <a href=#text-track-showing title="text track showing">showing</a>, while the <a href=#track-url>track URL</a> is not
equal to <var title="">URL</var></li>
- </ul><p>...then the user agent must run the following steps:</p>
+ </ul><p>...then the user agent must abort the <a href=#fetch title=fetch>fetching algorithm</a>,
+ discarding any pending <a href=#concept-task title=concept-task>tasks</a> generated by that algorithm (and
+ in particular, not adding any cues to the <a href=#text-track-list-of-cues>text track list of cues</a> after the moment
+ the URL changed), and then <a href=#queue-a-task>queue a task</a> that first changes the <a href=#text-track-readiness-state>text track
+ readiness state</a> to <a href=#text-track-failed-to-load title="text track failed to load">failed to load</a> and
+ then <a href=#fire-a-simple-event title="fire a simple event">fires a simple event</a> named <code title=event-error><a href=#event-error>error</a></code> at the <code><a href=#the-track-element>track</a></code> element.</p>
- <ol><li><p>Abort the <a href=#fetch title=fetch>fetching algorithm</a>, discarding any pending <a href=#concept-task title=concept-task>tasks</a> generated by that algorithm (and in particular, not adding
- any cues to the <a href=#text-track-list-of-cues>text track list of cues</a> after the moment the URL
- changed).</li>
+ </li>
- <li><p>Jump back to the step labeled <i>top</i>.</li>
+ <li><p>Wait until the <a href=#text-track-readiness-state>text track readiness state</a> is no longer set to <a href=#text-track-loading title="text track loading">loading</a>.</li>
- </ol><p>Until one of the above circumstances occurs, the user agent must remain on this step.</p>
+ <li><p>Wait until the <a href=#track-url>track URL</a> is no longer equal to <var title="">URL</var>, at
+ the same time as the <a href=#text-track-mode>text track mode</a> is set to <a href=#text-track-hidden title="text track
+ hidden">hidden</a> or <a href=#text-track-showing title="text track showing">showing</a>.</li>
- </li>
+ <li><p>Jump to the step labeled <i>top</i>.</li>
</ol><p>Whenever a <code><a href=#the-track-element>track</a></code> element has its <code title=attr-track-src><a href=#attr-track-src>src</a></code> attribute
set, changed, or removed, the user agent must synchronously empty the element's <a href=#text-track>text
Modified: source
===================================================================
--- source 2014-02-04 20:01:25 UTC (rev 8460)
+++ source 2014-02-04 21:10:47 UTC (rev 8461)
@@ -32011,59 +32011,30 @@
field, the recipient MAY attempt to guess the media type via inspection of its content
and<!---->/<!---->or the name extension(s) of the URI used to identify the resource.").</p>
- <p>If the <span data-x="fetch">fetching algorithm</span> fails for any reason (network error, the
- server returns an error code, a cross-origin check fails, etc), if <var data-x="">URL</var> is
- the empty string, or if the <!--sniffed--> type of the resource is not a supported text track
- format, then run these steps:</p>
+ <p>If the <span data-x="fetch">fetching algorithm</span> fails for any reason (network error,
+ the server returns an error code, a cross-origin check fails, etc), or if <var
+ data-x="">URL</var> is the empty string, then <span>queue a task</span> to first change the
+ <span>text track readiness state</span> to <span data-x="text track failed to load">failed to
+ load</span> and then <span>fire a simple event</span> named <code
+ data-x="event-error">error</code> at the <code>track</code> element.</p>
- <ol>
+ <p>If the <span data-x="fetch">fetching algorithm</span> does not fail, but the <!--sniffed-->
+ type of the resource is not a supported text track format, or the file was not successfully
+ processed (e.g. the format in question is an XML format and the file contained a well-formedness
+ error that the XML specification requires be detected and reported to the application), then the
+ <span data-x="concept-task">task</span> that is <span data-x="queue a task">queued</span> by the
+ <span>networking task source</span> in which the aforementioned problem is found must change the
+ <span>text track readiness state</span> to <span data-x="text track failed to load">failed to
+ load</span> and <span>fire a simple event</span> named <code data-x="event-error">error</code>
+ at the <code>track</code> element.</p>
- <li><p><span>Queue a task</span> to first change the <span>text track readiness state</span> to
- <span data-x="text track failed to load">failed to load</span> and then <span>fire a simple
- event</span> named <code data-x="event-error">error</code> at the <code>track</code>
- element.</p></li>
+ <p>If the <span data-x="fetch">fetching algorithm</span> does not fail, and the file was
+ successfully processed, then the final <span data-x="concept-task">task</span> that is <span
+ data-x="queue a task">queued</span> by the <span>networking task source</span>, after it has
+ finished parsing the data, must change the <span>text track readiness state</span> to <span
+ data-x="text track loaded">loaded</span>, and <span>fire a simple event</span> named <code
+ data-x="event-load">load</code> at the <code>track</code> element.</p>
- <li><p>Wait until the <span>text track readiness state</span> is no longer set to <span
- data-x="text track loading">loading</span>.</p></li>
-
- <li><p>Wait until the <span>track URL</span> is no longer equal to <var data-x="">URL</var>, at
- the same time as the <span>text track mode</span> is set to <span data-x="text track
- hidden">hidden</span> or <span data-x="text track showing">showing</span>.</p></li>
-
- <li><p>Jump to the step labeled <i>top</i>.</p></li>
-
- </ol>
-
- <p>If the <span data-x="fetch">fetching algorithm</span> does not fail, then the final <span
- data-x="concept-task">task</span> that is <span data-x="queue a task">queued</span> by the
- <span>networking task source</span> must run the following steps after it has tried to parse the
- data:</p>
-
- <ol>
-
- <li><p>Change the <span>text track readiness state</span> to <span data-x="text track
- loaded">loaded</span>.</p></li>
-
- <li>
-
- <p>If the file was successfully processed, <span>fire a simple event</span> named <code
- data-x="event-load">load</code> at the <code>track</code> element.</p>
-
- <p>Otherwise, the file was not successfully processed (e.g. the format in question is an XML
- format and the file contained a well-formedness error that the XML specification requires be
- detected and reported to the application); <span>fire a simple event</span> named <code
- data-x="event-error">error</code> at the <code>track</code> element.</p>
-
- </li>
-
- <li><p>Wait until the <span>track URL</span> is no longer equal to <var data-x="">URL</var>, at
- the same time as the <span>text track mode</span> is set to <span data-x="text track
- hidden">hidden</span> or <span data-x="text track showing">showing</span>.</p></li>
-
- <li><p>Jump back to the step labeled <i>top</i>.</p></li>
-
- </ol>
-
<p>If, while the <span data-x="fetch">fetching algorithm</span> is active, either:</p>
<ul>
@@ -32078,23 +32049,25 @@
</ul>
- <p>...then the user agent must run the following steps:</p>
+ <p>...then the user agent must abort the <span data-x="fetch">fetching algorithm</span>,
+ discarding any pending <span data-x="concept-task">tasks</span> generated by that algorithm (and
+ in particular, not adding any cues to the <span>text track list of cues</span> after the moment
+ the URL changed), and then <span>queue a task</span> that first changes the <span>text track
+ readiness state</span> to <span data-x="text track failed to load">failed to load</span> and
+ then <span data-x="fire a simple event">fires a simple event</span> named <code
+ data-x="event-error">error</code> at the <code>track</code> element.</p>
- <ol>
+ </li>
- <li><p>Abort the <span data-x="fetch">fetching algorithm</span>, discarding any pending <span
- data-x="concept-task">tasks</span> generated by that algorithm (and in particular, not adding
- any cues to the <span>text track list of cues</span> after the moment the URL
- changed).</p></li>
+ <li><p>Wait until the <span>text track readiness state</span> is no longer set to <span
+ data-x="text track loading">loading</span>.</p></li>
- <li><p>Jump back to the step labeled <i>top</i>.</p></li>
+ <li><p>Wait until the <span>track URL</span> is no longer equal to <var data-x="">URL</var>, at
+ the same time as the <span>text track mode</span> is set to <span data-x="text track
+ hidden">hidden</span> or <span data-x="text track showing">showing</span>.</p></li>
- </ol>
+ <li><p>Jump to the step labeled <i>top</i>.</p></li>
- <p>Until one of the above circumstances occurs, the user agent must remain on this step.</p>
-
- </li>
-
</ol>
<p>Whenever a <code>track</code> element has its <code data-x="attr-track-src">src</code> attribute
More information about the Commit-Watchers
mailing list