| Index: content/browser/service_worker/service_worker_database.cc
|
| diff --git a/content/browser/service_worker/service_worker_database.cc b/content/browser/service_worker/service_worker_database.cc
|
| index c4c3a8b952bb88d0a631fb9c470487d26651a35e..5d3911c64b663cd6a692e813bc894b9d8d4e31ac 100644
|
| --- a/content/browser/service_worker/service_worker_database.cc
|
| +++ b/content/browser/service_worker/service_worker_database.cc
|
| @@ -1193,6 +1193,15 @@ ServiceWorkerDatabase::Status ServiceWorkerDatabase::ParseRegistrationData(
|
| }
|
| out->foreign_fetch_scopes.push_back(sub_scope_url);
|
| }
|
| + for (int i = 0; i < data.foreign_fetch_origin_size(); ++i) {
|
| + GURL origin_url(data.foreign_fetch_origin(i));
|
| + if (!origin_url.is_valid()) {
|
| + DLOG(ERROR) << "Foreign fetch origin '" << data.foreign_fetch_origin(i)
|
| + << "' is not valid.";
|
| + return ServiceWorkerDatabase::STATUS_ERROR_CORRUPTED;
|
| + }
|
| + out->foreign_fetch_origins.push_back(origin_url);
|
| + }
|
|
|
| return ServiceWorkerDatabase::STATUS_OK;
|
| }
|
| @@ -1224,6 +1233,8 @@ void ServiceWorkerDatabase::WriteRegistrationDataInBatch(
|
| << "'.";
|
| data.add_foreign_fetch_scope(url.spec());
|
| }
|
| + for (const GURL& url : registration.foreign_fetch_origins)
|
| + data.add_foreign_fetch_origin(url.spec());
|
|
|
| std::string value;
|
| bool success = data.SerializeToString(&value);
|
|
|