| Index: content/renderer/cache_storage/cache_storage_dispatcher.cc
|
| diff --git a/content/renderer/cache_storage/cache_storage_dispatcher.cc b/content/renderer/cache_storage/cache_storage_dispatcher.cc
|
| index 99c1605180a409fd0497b893dab1339399a69748..78755f1568ed75b835aafa80cf4b7b8d0b08844e 100644
|
| --- a/content/renderer/cache_storage/cache_storage_dispatcher.cc
|
| +++ b/content/renderer/cache_storage/cache_storage_dispatcher.cc
|
| @@ -21,6 +21,7 @@
|
| #include "content/public/common/referrer.h"
|
| #include "content/public/renderer/render_thread.h"
|
| #include "content/renderer/service_worker/service_worker_type_util.h"
|
| +#include "third_party/WebKit/public/platform/StringVectorCopier.h"
|
| #include "third_party/WebKit/public/platform/modules/serviceworker/WebServiceWorkerCache.h"
|
| #include "third_party/WebKit/public/platform/modules/serviceworker/WebServiceWorkerRequest.h"
|
| #include "third_party/WebKit/public/platform/modules/serviceworker/WebServiceWorkerResponse.h"
|
| @@ -104,7 +105,8 @@ CacheStorageCacheQueryParams QueryParamsFromWebQueryParams(
|
| query_params.ignore_search = web_query_params.ignoreSearch;
|
| query_params.ignore_method = web_query_params.ignoreMethod;
|
| query_params.ignore_vary = web_query_params.ignoreVary;
|
| - query_params.cache_name = web_query_params.cacheName;
|
| + query_params.cache_name =
|
| + blink::WebString::toNullableString16(web_query_params.cacheName);
|
| return query_params;
|
| }
|
|
|
| @@ -326,9 +328,8 @@ void CacheStorageDispatcher::OnCacheStorageKeysSuccess(
|
| int request_id,
|
| const std::vector<base::string16>& keys) {
|
| DCHECK_EQ(thread_id, CurrentWorkerId());
|
| - blink::WebVector<blink::WebString> webKeys(keys.size());
|
| - for (size_t i = 0; i < keys.size(); ++i)
|
| - webKeys[i] = keys[i];
|
| + blink::WebVector<blink::WebString> webKeys(
|
| + blink::CopyStringVectorFromUTF16(keys));
|
|
|
| UMA_HISTOGRAM_TIMES("ServiceWorkerCache.CacheStorage.Keys",
|
| TimeTicks::Now() - keys_times_[request_id]);
|
| @@ -521,7 +522,7 @@ void CacheStorageDispatcher::dispatchHas(
|
| int request_id = has_callbacks_.Add(std::move(callbacks));
|
| has_times_[request_id] = base::TimeTicks::Now();
|
| Send(new CacheStorageHostMsg_CacheStorageHas(CurrentWorkerId(), request_id,
|
| - origin, cacheName));
|
| + origin, cacheName.utf16()));
|
| }
|
|
|
| void CacheStorageDispatcher::dispatchOpen(
|
| @@ -532,7 +533,7 @@ void CacheStorageDispatcher::dispatchOpen(
|
| int request_id = open_callbacks_.Add(std::move(callbacks));
|
| open_times_[request_id] = base::TimeTicks::Now();
|
| Send(new CacheStorageHostMsg_CacheStorageOpen(CurrentWorkerId(), request_id,
|
| - origin, cacheName));
|
| + origin, cacheName.utf16()));
|
| }
|
|
|
| void CacheStorageDispatcher::dispatchDelete(
|
| @@ -543,7 +544,7 @@ void CacheStorageDispatcher::dispatchDelete(
|
| int request_id = delete_callbacks_.Add(std::move(callbacks));
|
| delete_times_[request_id] = base::TimeTicks::Now();
|
| Send(new CacheStorageHostMsg_CacheStorageDelete(CurrentWorkerId(), request_id,
|
| - origin, cacheName));
|
| + origin, cacheName.utf16()));
|
| }
|
|
|
| void CacheStorageDispatcher::dispatchKeys(
|
| @@ -652,12 +653,8 @@ void CacheStorageDispatcher::PopulateWebResponseFromResponse(
|
| response.is_in_cache_storage
|
| ? blink::WebString::fromUTF8(response.cache_storage_cache_name)
|
| : blink::WebString());
|
| - blink::WebVector<blink::WebString> headers(
|
| - response.cors_exposed_header_names.size());
|
| - std::transform(
|
| - response.cors_exposed_header_names.begin(),
|
| - response.cors_exposed_header_names.end(), headers.begin(),
|
| - [](const std::string& h) { return blink::WebString::fromLatin1(h); });
|
| + blink::WebVector<blink::WebString> headers =
|
| + blink::CopyStringVectorFromLatin1(response.cors_exposed_header_names);
|
| web_response->setCorsExposedHeaderNames(headers);
|
|
|
| for (const auto& i : response.headers) {
|
|
|