[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