Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(768)

Side by Side Diff: Source/WebCore/loader/cache/CachedResourceLoader.cpp

Issue 13839016: Remove CSS_SHADERS compile-time flag. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 Copyright (C) 1998 Lars Knoll (knoll@mpi-hd.mpg.de) 2 Copyright (C) 1998 Lars Knoll (knoll@mpi-hd.mpg.de)
3 Copyright (C) 2001 Dirk Mueller (mueller@kde.org) 3 Copyright (C) 2001 Dirk Mueller (mueller@kde.org)
4 Copyright (C) 2002 Waldo Bastian (bastian@kde.org) 4 Copyright (C) 2002 Waldo Bastian (bastian@kde.org)
5 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved. 5 Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
6 Copyright (C) 2009 Torch Mobile Inc. http://www.torchmobile.com/ 6 Copyright (C) 2009 Torch Mobile Inc. http://www.torchmobile.com/
7 7
8 This library is free software; you can redistribute it and/or 8 This library is free software; you can redistribute it and/or
9 modify it under the terms of the GNU Library General Public 9 modify it under the terms of the GNU Library General Public
10 License as published by the Free Software Foundation; either 10 License as published by the Free Software Foundation; either
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 #include <wtf/MemoryInstrumentationHashSet.h> 54 #include <wtf/MemoryInstrumentationHashSet.h>
55 #include <wtf/MemoryInstrumentationListHashSet.h> 55 #include <wtf/MemoryInstrumentationListHashSet.h>
56 #include <wtf/UnusedParam.h> 56 #include <wtf/UnusedParam.h>
57 #include <wtf/text/CString.h> 57 #include <wtf/text/CString.h>
58 #include <wtf/text/WTFString.h> 58 #include <wtf/text/WTFString.h>
59 59
60 #if ENABLE(VIDEO_TRACK) 60 #if ENABLE(VIDEO_TRACK)
61 #include "CachedTextTrack.h" 61 #include "CachedTextTrack.h"
62 #endif 62 #endif
63 63
64 #if ENABLE(CSS_SHADERS)
65 #include "CachedShader.h" 64 #include "CachedShader.h"
66 #endif
67 65
68 #if ENABLE(RESOURCE_TIMING) 66 #if ENABLE(RESOURCE_TIMING)
69 #include "Performance.h" 67 #include "Performance.h"
70 #endif 68 #endif
71 69
72 #define PRELOAD_DEBUG 0 70 #define PRELOAD_DEBUG 0
73 71
74 namespace WebCore { 72 namespace WebCore {
75 73
76 static CachedResource* createResource(CachedResource::Type type, ResourceRequest & request, const String& charset) 74 static CachedResource* createResource(CachedResource::Type type, ResourceRequest & request, const String& charset)
(...skipping 21 matching lines...) Expand all
98 #if ENABLE(LINK_PREFETCH) 96 #if ENABLE(LINK_PREFETCH)
99 case CachedResource::LinkPrefetch: 97 case CachedResource::LinkPrefetch:
100 return new CachedResource(request, CachedResource::LinkPrefetch); 98 return new CachedResource(request, CachedResource::LinkPrefetch);
101 case CachedResource::LinkSubresource: 99 case CachedResource::LinkSubresource:
102 return new CachedResource(request, CachedResource::LinkSubresource); 100 return new CachedResource(request, CachedResource::LinkSubresource);
103 #endif 101 #endif
104 #if ENABLE(VIDEO_TRACK) 102 #if ENABLE(VIDEO_TRACK)
105 case CachedResource::TextTrackResource: 103 case CachedResource::TextTrackResource:
106 return new CachedTextTrack(request); 104 return new CachedTextTrack(request);
107 #endif 105 #endif
108 #if ENABLE(CSS_SHADERS)
109 case CachedResource::ShaderResource: 106 case CachedResource::ShaderResource:
110 return new CachedShader(request); 107 return new CachedShader(request);
111 #endif
112 } 108 }
113 ASSERT_NOT_REACHED(); 109 ASSERT_NOT_REACHED();
114 return 0; 110 return 0;
115 } 111 }
116 112
117 CachedResourceLoader::CachedResourceLoader(DocumentLoader* documentLoader) 113 CachedResourceLoader::CachedResourceLoader(DocumentLoader* documentLoader)
118 : m_document(0) 114 : m_document(0)
119 , m_documentLoader(documentLoader) 115 , m_documentLoader(documentLoader)
120 , m_requestCount(0) 116 , m_requestCount(0)
121 , m_garbageCollectDocumentResourcesTimer(this, &CachedResourceLoader::garbag eCollectDocumentResourcesTimerFired) 117 , m_garbageCollectDocumentResourcesTimer(this, &CachedResourceLoader::garbag eCollectDocumentResourcesTimerFired)
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 return static_cast<CachedFont*>(requestResource(CachedResource::FontResource , request).get()); 171 return static_cast<CachedFont*>(requestResource(CachedResource::FontResource , request).get());
176 } 172 }
177 173
178 #if ENABLE(VIDEO_TRACK) 174 #if ENABLE(VIDEO_TRACK)
179 CachedResourceHandle<CachedTextTrack> CachedResourceLoader::requestTextTrack(Cac hedResourceRequest& request) 175 CachedResourceHandle<CachedTextTrack> CachedResourceLoader::requestTextTrack(Cac hedResourceRequest& request)
180 { 176 {
181 return static_cast<CachedTextTrack*>(requestResource(CachedResource::TextTra ckResource, request).get()); 177 return static_cast<CachedTextTrack*>(requestResource(CachedResource::TextTra ckResource, request).get());
182 } 178 }
183 #endif 179 #endif
184 180
185 #if ENABLE(CSS_SHADERS)
186 CachedResourceHandle<CachedShader> CachedResourceLoader::requestShader(CachedRes ourceRequest& request) 181 CachedResourceHandle<CachedShader> CachedResourceLoader::requestShader(CachedRes ourceRequest& request)
187 { 182 {
188 return static_cast<CachedShader*>(requestResource(CachedResource::ShaderReso urce, request).get()); 183 return static_cast<CachedShader*>(requestResource(CachedResource::ShaderReso urce, request).get());
189 } 184 }
190 #endif
191 185
192 CachedResourceHandle<CachedCSSStyleSheet> CachedResourceLoader::requestCSSStyleS heet(CachedResourceRequest& request) 186 CachedResourceHandle<CachedCSSStyleSheet> CachedResourceLoader::requestCSSStyleS heet(CachedResourceRequest& request)
193 { 187 {
194 return static_cast<CachedCSSStyleSheet*>(requestResource(CachedResource::CSS StyleSheet, request).get()); 188 return static_cast<CachedCSSStyleSheet*>(requestResource(CachedResource::CSS StyleSheet, request).get());
195 } 189 }
196 190
197 CachedResourceHandle<CachedCSSStyleSheet> CachedResourceLoader::requestUserCSSSt yleSheet(CachedResourceRequest& request) 191 CachedResourceHandle<CachedCSSStyleSheet> CachedResourceLoader::requestUserCSSSt yleSheet(CachedResourceRequest& request)
198 { 192 {
199 KURL url = MemoryCache::removeFragmentIdentifierIfNeeded(request.resourceReq uest().url()); 193 KURL url = MemoryCache::removeFragmentIdentifierIfNeeded(request.resourceReq uest().url());
200 194
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
267 case CachedResource::CSSStyleSheet: 261 case CachedResource::CSSStyleSheet:
268 // These resource can inject script into the current document (Script, 262 // These resource can inject script into the current document (Script,
269 // XSL) or exfiltrate the content of the current document (CSS). 263 // XSL) or exfiltrate the content of the current document (CSS).
270 if (Frame* f = frame()) 264 if (Frame* f = frame())
271 if (!f->loader()->mixedContentChecker()->canRunInsecureContent(m_doc ument->securityOrigin(), url)) 265 if (!f->loader()->mixedContentChecker()->canRunInsecureContent(m_doc ument->securityOrigin(), url))
272 return false; 266 return false;
273 break; 267 break;
274 #if ENABLE(VIDEO_TRACK) 268 #if ENABLE(VIDEO_TRACK)
275 case CachedResource::TextTrackResource: 269 case CachedResource::TextTrackResource:
276 #endif 270 #endif
277 #if ENABLE(CSS_SHADERS)
278 case CachedResource::ShaderResource: 271 case CachedResource::ShaderResource:
279 #endif
280 case CachedResource::RawResource: 272 case CachedResource::RawResource:
281 case CachedResource::ImageResource: 273 case CachedResource::ImageResource:
282 case CachedResource::FontResource: { 274 case CachedResource::FontResource: {
283 // These resources can corrupt only the frame's pixels. 275 // These resources can corrupt only the frame's pixels.
284 if (Frame* f = frame()) { 276 if (Frame* f = frame()) {
285 Frame* top = f->tree()->top(); 277 Frame* top = f->tree()->top();
286 if (!top->loader()->mixedContentChecker()->canDisplayInsecureContent (top->document()->securityOrigin(), url)) 278 if (!top->loader()->mixedContentChecker()->canDisplayInsecureContent (top->document()->securityOrigin(), url))
287 return false; 279 return false;
288 } 280 }
289 break; 281 break;
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
321 case CachedResource::Script: 313 case CachedResource::Script:
322 case CachedResource::FontResource: 314 case CachedResource::FontResource:
323 case CachedResource::RawResource: 315 case CachedResource::RawResource:
324 #if ENABLE(LINK_PREFETCH) 316 #if ENABLE(LINK_PREFETCH)
325 case CachedResource::LinkPrefetch: 317 case CachedResource::LinkPrefetch:
326 case CachedResource::LinkSubresource: 318 case CachedResource::LinkSubresource:
327 #endif 319 #endif
328 #if ENABLE(VIDEO_TRACK) 320 #if ENABLE(VIDEO_TRACK)
329 case CachedResource::TextTrackResource: 321 case CachedResource::TextTrackResource:
330 #endif 322 #endif
331 #if ENABLE(CSS_SHADERS)
332 case CachedResource::ShaderResource: 323 case CachedResource::ShaderResource:
333 #endif
334 // These types of resources can be loaded from any origin. 324 // These types of resources can be loaded from any origin.
335 // FIXME: Are we sure about CachedResource::FontResource? 325 // FIXME: Are we sure about CachedResource::FontResource?
336 break; 326 break;
337 #if ENABLE(SVG) 327 #if ENABLE(SVG)
338 case CachedResource::SVGDocumentResource: 328 case CachedResource::SVGDocumentResource:
339 #endif 329 #endif
340 #if ENABLE(XSLT) 330 #if ENABLE(XSLT)
341 case CachedResource::XSLStyleSheet: 331 case CachedResource::XSLStyleSheet:
342 if (!m_document->securityOrigin()->canRequest(url)) { 332 if (!m_document->securityOrigin()->canRequest(url)) {
343 printAccessDeniedMessage(url); 333 printAccessDeniedMessage(url);
(...skipping 15 matching lines...) Expand all
359 return false; 349 return false;
360 350
361 if (frame()) { 351 if (frame()) {
362 Settings* settings = frame()->settings(); 352 Settings* settings = frame()->settings();
363 if (!frame()->loader()->client()->allowScriptFromSource(!settings || settings->isScriptEnabled(), url)) { 353 if (!frame()->loader()->client()->allowScriptFromSource(!settings || settings->isScriptEnabled(), url)) {
364 frame()->loader()->client()->didNotAllowScript(); 354 frame()->loader()->client()->didNotAllowScript();
365 return false; 355 return false;
366 } 356 }
367 } 357 }
368 break; 358 break;
369 #if ENABLE(CSS_SHADERS)
370 case CachedResource::ShaderResource: 359 case CachedResource::ShaderResource:
371 // Since shaders are referenced from CSS Styles use the same rules here. 360 // Since shaders are referenced from CSS Styles use the same rules here.
372 #endif
373 case CachedResource::CSSStyleSheet: 361 case CachedResource::CSSStyleSheet:
374 if (!shouldBypassMainWorldContentSecurityPolicy && !m_document->contentS ecurityPolicy()->allowStyleFromSource(url)) 362 if (!shouldBypassMainWorldContentSecurityPolicy && !m_document->contentS ecurityPolicy()->allowStyleFromSource(url))
375 return false; 363 return false;
376 break; 364 break;
377 #if ENABLE(SVG) 365 #if ENABLE(SVG)
378 case CachedResource::SVGDocumentResource: 366 case CachedResource::SVGDocumentResource:
379 #endif 367 #endif
380 case CachedResource::ImageResource: 368 case CachedResource::ImageResource:
381 if (!shouldBypassMainWorldContentSecurityPolicy && !m_document->contentS ecurityPolicy()->allowImageFromSource(url)) 369 if (!shouldBypassMainWorldContentSecurityPolicy && !m_document->contentS ecurityPolicy()->allowImageFromSource(url))
382 return false; 370 return false;
(...skipping 612 matching lines...) Expand 10 before | Expand all | Expand 10 after
995 983
996 } 984 }
997 985
998 const ResourceLoaderOptions& CachedResourceLoader::defaultCachedResourceOptions( ) 986 const ResourceLoaderOptions& CachedResourceLoader::defaultCachedResourceOptions( )
999 { 987 {
1000 static ResourceLoaderOptions options(SendCallbacks, SniffContent, BufferData , AllowStoredCredentials, AskClientForCrossOriginCredentials, DoSecurityCheck); 988 static ResourceLoaderOptions options(SendCallbacks, SniffContent, BufferData , AllowStoredCredentials, AskClientForCrossOriginCredentials, DoSecurityCheck);
1001 return options; 989 return options;
1002 } 990 }
1003 991
1004 } 992 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698