| Index: content/browser/service_worker/service_worker_controllee_request_handler.cc
 | 
| diff --git a/content/browser/service_worker/service_worker_controllee_request_handler.cc b/content/browser/service_worker/service_worker_controllee_request_handler.cc
 | 
| index fdaa81dc171a21d5994968c4e186dc801e295785..72682b3b43182b4b53d2f24daec50befde374450 100644
 | 
| --- a/content/browser/service_worker/service_worker_controllee_request_handler.cc
 | 
| +++ b/content/browser/service_worker/service_worker_controllee_request_handler.cc
 | 
| @@ -46,13 +46,21 @@ ServiceWorkerControlleeRequestHandler::
 | 
|  net::URLRequestJob* ServiceWorkerControlleeRequestHandler::MaybeCreateJob(
 | 
|      net::URLRequest* request,
 | 
|      net::NetworkDelegate* network_delegate) {
 | 
| -  if (!context_ || !provider_host_ ||
 | 
| -      request->load_flags() & net::LOAD_BYPASS_CACHE) {
 | 
| +  if (!context_ || !provider_host_) {
 | 
|      // We can't do anything other than to fall back to network.
 | 
|      job_ = NULL;
 | 
|      return NULL;
 | 
|    }
 | 
|  
 | 
| +  if (request->load_flags() & net::LOAD_BYPASS_CACHE) {
 | 
| +    if (is_main_resource_load_) {
 | 
| +      provider_host_->SetDocumentUrl(
 | 
| +          net::SimplifyUrlForRequest(request->url()));
 | 
| +    }
 | 
| +    job_ = NULL;
 | 
| +    return NULL;
 | 
| +  }
 | 
| +
 | 
|    // This may get called multiple times for original and redirect requests:
 | 
|    // A. original request case: job_ is null, no previous location info.
 | 
|    // B. redirect or restarted request case:
 | 
| 
 |