html5/spec Overview.html,1.1511,1.1512

Update of /sources/public/html5/spec
In directory hutz:/tmp/cvs-serv27026

Modified Files:
	Overview.html 
Log Message:
handle captive portals better in the offline appcache feature (whatwg r2339)

Index: Overview.html
===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.1511
retrieving revision 1.1512
diff -u -d -r1.1511 -r1.1512
--- Overview.html	16 Oct 2008 00:33:23 -0000	1.1511
+++ Overview.html	16 Oct 2008 00:45:43 -0000	1.1512
@@ -27933,10 +27933,23 @@
 
      </li>
 
-     <li><p>If the previous steps fails (e.g. the server returns a 4xx
-     or 5xx response or equivalent, or there is a DNS error, or the
-     connection times out, or the user cancels the download), then run
-     the <a href=#cache-failure-steps>cache failure steps</a>.</li>
+     <li>
+
+      <p>If the previous steps fails (e.g. the server returns a 4xx or
+      5xx response or equivalent, or there is a DNS error, or the
+      connection times out, or the user cancels the download), or if
+      the server returned a redirect, then run the <a href=#cache-failure-steps>cache failure
+      steps</a>.</p>
+
+      <p class=note>Redirects are fatal because they are either
+      indicative of a network problem (e.g. a captive portal); or
+      would allow resources to be added to the cache under URLs that
+      differ from any URL that the networking model will allow access
+      to, leaving orphan entries; or would allow resources to be
+      stored under URLs different than their true URLs. All of these
+      situations are bad.</p>
+
+     </li>
 
      <li><p>Otherwise, the fetching succeeded. Store the resource in
      the <var title="">new cache</var>.</li>
@@ -27985,10 +27998,11 @@
     in the cache manifest, then it might still be being
     downloaded.</p>
 
-    <p>If any of these downloads fail (e.g. the server returns a 4xx
-    or 5xx response or equivalent, or there is a DNS error, or the
-    connection times out, or the user cancels the download), then run
-    the <a href=#cache-failure-steps>cache failure steps</a>.</p>
+    <p>If any of these downloads fail (e.g. the connection times out,
+    or the user cancels the download), then run the <a href=#cache-failure-steps>cache
+    failure steps</a>.</p> <!-- can't fail with a non-2xx code,
+    because things only get added to the cache implicitly once they
+    are known to have a manifest="" attribute. -->
 
    </li>
 
@@ -28207,12 +28221,15 @@
     the <a href=#application-cache>application cache</a> whose &lt;path&gt; component is
     a <a href=#prefix-match>prefix match</a> for the resource's URL's <a href=#url-path title=url-path>&lt;path&gt;</a> component, then:</p>
 
-    <p><a href=#fetch>Fetch</a> the resource normally. If this results 4xx
-    or 5xx status codes or equivalent, or if there were network errors
-    (but not if the user canceled the download), then instead get,
-    from the cache, the resource of the <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback entry</a>
-    corresponding to the namespace with the longest matching <a href=#url-path title=url-path>&lt;path&gt;</a> component. Abort these
-    steps.</p>
+    <p><a href=#fetch>Fetch</a> the resource normally. If this results in a
+    redirect to a resource with another <a href=#origin-0>origin</a>
+    (indicative of a captive portal), or a 4xx or 5xx status code or
+    equivalent, or if there were network errors (but not if the user
+    canceled the download), then instead get, from the cache, the
+    resource of the <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback
+    entry</a> corresponding to the namespace with the longest
+    matching <a href=#url-path title=url-path>&lt;path&gt;</a>
+    component. Abort these steps.</p>
 
    </li>
 
@@ -28353,9 +28370,9 @@
 
    <li><p><a href=#fetch>Fetch</a> the resource referenced by <var title="">url</var>.</li>
 
-   <li><p>If this results 4xx or 5xx status codes or equivalent, or if
-   there were network errors, or if the user canceled the download,
-   then abort these steps.</li>
+   <li><p>If this results in a redirect, or a 4xx or 5xx status code
+   or equivalent, or if there were network errors, or if the user
+   canceled the download, then abort these steps.</li>
 
    <li>
 
@@ -28893,7 +28910,10 @@
     the browsing context being navigated is a <a href=#top-level-browsing-context>top-level browsing
     context</a>, and the navigation attempt failed (e.g. the server
     returned a 4xx or 5xx status code or equivalent, or there was a
-    DNS error), then:</p>
+    DNS error), then:</p> <!-- note that a redirect can never reach
+    this point as it is handled earlier, meaning that a captive portal
+    captures URLs in fallback namespaces and you can't ever get to the
+    fallback file of a resource if you have a captive portal -->
 
     <p>Let <var title="">candidate</var> be the <a href=#concept-appcache-fallback title=concept-appcache-fallback>fallback resource</a>
     specified for the <a href=#concept-appcache-fallback-ns title=concept-appcache-fallback-ns>fallback namespace</a> in

Received on Thursday, 16 October 2008 00:45:58 UTC