Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / http / tests / serviceworker / resources / fetch-access-control-worker.js
index 1cfb4c4..56b8b8a 100644 (file)
@@ -75,15 +75,28 @@ self.addEventListener('fetch', function(event) {
           } else if (!params['noChange']) {
             request = new Request(request, init);
           }
+          var response;
           fetch(request)
             .then(function(res) {
-                // Send the result to fetch-access-control.html.
-                port.postMessage({fetchResult: 'resolved',
-                                  hasBody: !!res.body,
-                                  headers: headersToArray(res.headers),
-                                  type: res.type,
-                                  originalURL: originalURL});
-                resolve(res);
+                response = res;
+                res.text()
+                  .then(function(body) {
+                      // Send the result to fetch-access-control.html.
+                      port.postMessage(
+                        {
+                          fetchResult: 'resolved',
+                          body: body,
+                          headers: headersToArray(response.headers),
+                          type: response.type,
+                          originalURL: originalURL
+                        });
+                      resolve(response);
+                    })
+                  .catch(function(e) {
+                      // Send the result to fetch-access-control.html.
+                      port.postMessage({fetchResult: 'error'});
+                      reject();
+                    });
               })
             .catch(function(e) {
                 // Send the result to fetch-access-control.html.