The reference http://www.w3.org/html/wg/drafts/html/master/browsers.html#concept-appcache-fallback needs to mention that fallback entries can't contain uri duplicates.
Use case : on first manifest visit, cookieless user agent may use url rewriting for resources, ie use a ";jsessionid=" trail or some other kind of session parameter. The uri + session trail seems to be the cache key at least on iOS devices.
The following manifest will cause Chrome 24 to fail loading the manifest, with a cryptic "Application Cache Error event: Failed to commit new cache to storage" error message :
This will fail because of the duplicate /fallback.php line. Removing the second one with ?sessionid fixes the problem. I believe Chrome does not know which fallback line to use.
That's just a bug in chrome. The spec allows "nested" fallback entries like this.
EDITOR'S RESPONSE: This is an Editor's Response to your comment. If you are
satisfied with this response, please change the state of this bug to CLOSED. If
you have additional information and would like the Editor to reconsider, please
reopen this bug. If you would like to escalate the issue to the full HTML
Working Group, please add the TrackerRequest keyword to this bug, and suggest
title and text for the Tracker Issue; or you may create a Tracker Issue
yourself, if you are able to do so. For more details, see this document:
Change Description: none
Rationale: A duplicate fallback namespace is just ignored as per spec, this is just an implementation error.