diff options
Diffstat (limited to 'WebCore/loader/appcache/ManifestParser.cpp')
-rw-r--r-- | WebCore/loader/appcache/ManifestParser.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/WebCore/loader/appcache/ManifestParser.cpp b/WebCore/loader/appcache/ManifestParser.cpp index a2df825..b001bff 100644 --- a/WebCore/loader/appcache/ManifestParser.cpp +++ b/WebCore/loader/appcache/ManifestParser.cpp @@ -43,7 +43,8 @@ bool parseManifest(const KURL& manifestURL, const char* data, int length, Manife ASSERT(manifest.explicitURLs.isEmpty()); ASSERT(manifest.onlineWhitelistedURLs.isEmpty()); ASSERT(manifest.fallbackURLs.isEmpty()); - + manifest.allowAllNetworkRequests = false; + Mode mode = Explicit; RefPtr<TextResourceDecoder> decoder = TextResourceDecoder::create("text/cache-manifest", "UTF-8"); @@ -109,6 +110,12 @@ bool parseManifest(const KURL& manifestURL, const char* data, int length, Manife while (p < lineEnd && *p != '\t' && *p != ' ') p++; + if (mode == OnlineWhitelist && p - line.characters() == 1 && *line.characters() == '*') { + // Wildcard was found. + manifest.allowAllNetworkRequests = true; + continue; + } + KURL url(manifestURL, String(line.characters(), p - line.characters())); if (!url.isValid()) |