OLD | NEW |
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 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
163 | 163 |
164 blink::WebString mimetype; | 164 blink::WebString mimetype; |
165 blink::WebString charset; | 165 blink::WebString charset; |
166 RefPtr<SharedBuffer> data = PassRefPtr<SharedBuffer>(blink::Platform::curren
t()->parseDataURL(url, mimetype, charset)); | 166 RefPtr<SharedBuffer> data = PassRefPtr<SharedBuffer>(blink::Platform::curren
t()->parseDataURL(url, mimetype, charset)); |
167 if (!data) | 167 if (!data) |
168 return nullptr; | 168 return nullptr; |
169 ResourceResponse response(url, mimetype, data->size(), charset, String()); | 169 ResourceResponse response(url, mimetype, data->size(), charset, String()); |
170 | 170 |
171 Resource* resource = createResource(Resource::Image, request, charset); | 171 Resource* resource = createResource(Resource::Image, request, charset); |
172 resource->setOptions(resourceOptions); | 172 resource->setOptions(resourceOptions); |
173 resource->responseReceived(response); | 173 // FIXME: We should provide a body stream here. |
| 174 resource->responseReceived(response, nullptr); |
174 if (data->size()) | 175 if (data->size()) |
175 resource->setResourceBuffer(data); | 176 resource->setResourceBuffer(data); |
176 resource->finish(); | 177 resource->finish(); |
177 return resource; | 178 return resource; |
178 } | 179 } |
179 | 180 |
180 static void populateResourceTiming(ResourceTimingInfo* info, Resource* resource,
bool clearLoadTimings) | 181 static void populateResourceTiming(ResourceTimingInfo* info, Resource* resource,
bool clearLoadTimings) |
181 { | 182 { |
182 info->setInitialRequest(resource->resourceRequest()); | 183 info->setInitialRequest(resource->resourceRequest()); |
183 info->setFinalResponse(resource->response()); | 184 info->setFinalResponse(resource->response()); |
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
426 { | 427 { |
427 const KURL& url = request.url(); | 428 const KURL& url = request.url(); |
428 if (Resource* oldResource = memoryCache()->resourceForURL(url)) | 429 if (Resource* oldResource = memoryCache()->resourceForURL(url)) |
429 memoryCache()->remove(oldResource); | 430 memoryCache()->remove(oldResource); |
430 | 431 |
431 ResourceResponse response(url, substituteData.mimeType(), substituteData.con
tent()->size(), substituteData.textEncoding(), emptyString()); | 432 ResourceResponse response(url, substituteData.mimeType(), substituteData.con
tent()->size(), substituteData.textEncoding(), emptyString()); |
432 ResourcePtr<Resource> resource = createResource(Resource::MainResource, requ
est.resourceRequest(), substituteData.textEncoding()); | 433 ResourcePtr<Resource> resource = createResource(Resource::MainResource, requ
est.resourceRequest(), substituteData.textEncoding()); |
433 resource->setNeedsSynchronousCacheHit(substituteData.forceSynchronousLoad())
; | 434 resource->setNeedsSynchronousCacheHit(substituteData.forceSynchronousLoad())
; |
434 resource->setOptions(request.options()); | 435 resource->setOptions(request.options()); |
435 resource->setDataBufferingPolicy(BufferData); | 436 resource->setDataBufferingPolicy(BufferData); |
436 resource->responseReceived(response); | 437 resource->responseReceived(response, nullptr); |
437 if (substituteData.content()->size()) | 438 if (substituteData.content()->size()) |
438 resource->setResourceBuffer(substituteData.content()); | 439 resource->setResourceBuffer(substituteData.content()); |
439 resource->finish(); | 440 resource->finish(); |
440 memoryCache()->add(resource.get()); | 441 memoryCache()->add(resource.get()); |
441 } | 442 } |
442 | 443 |
443 bool ResourceFetcher::canRequest(Resource::Type type, const ResourceRequest& res
ourceRequest, const KURL& url, const ResourceLoaderOptions& options, bool forPre
load, FetchRequest::OriginRestriction originRestriction) const | 444 bool ResourceFetcher::canRequest(Resource::Type type, const ResourceRequest& res
ourceRequest, const KURL& url, const ResourceLoaderOptions& options, bool forPre
load, FetchRequest::OriginRestriction originRestriction) const |
444 { | 445 { |
445 SecurityOrigin* securityOrigin = options.securityOrigin.get(); | 446 SecurityOrigin* securityOrigin = options.securityOrigin.get(); |
446 if (!securityOrigin && document()) | 447 if (!securityOrigin && document()) |
(...skipping 1097 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1544 | 1545 |
1545 void ResourceFetcher::trace(Visitor* visitor) | 1546 void ResourceFetcher::trace(Visitor* visitor) |
1546 { | 1547 { |
1547 visitor->trace(m_document); | 1548 visitor->trace(m_document); |
1548 visitor->trace(m_loaders); | 1549 visitor->trace(m_loaders); |
1549 visitor->trace(m_multipartLoaders); | 1550 visitor->trace(m_multipartLoaders); |
1550 ResourceLoaderHost::trace(visitor); | 1551 ResourceLoaderHost::trace(visitor); |
1551 } | 1552 } |
1552 | 1553 |
1553 } | 1554 } |
OLD | NEW |