Commit Graph

54 Commits

Author SHA1 Message Date
Ben Kelly
d2dad60d4c Bug 1283674 P1 Make ServiceWorkerContainer::GetController() work gracefully when its window is disconnected. r=baku 2016-07-04 06:50:25 -07:00
Ben Kelly
4a424977b6 Bug 1283674 P0 Drop cached controlling ServiceWorker ref when ServiceWorkerContainer window is disconnect. r=baku 2016-07-04 06:50:25 -07:00
Kyle Huey
d11b9db617 Bug 1257032: Make files in dom/workers actually build without unification. r=baku 2016-03-16 11:51:11 -07:00
Kyle Huey
91efc5a86c Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Boris Zbarsky
df75080cc3 Bug 1226479. Change ErrorResult::ThrowTypeError/ThrowRangeError to take string references, not pointers. r=mccr8 2015-11-20 13:36:46 -05:00
Eddy Bruel
cb30e9f8bf Bug 1224237 - Remove the !baseURL check from ServiceWorkerContainer::Register;r=bkelly 2015-11-13 10:48:49 +01:00
Ben Kelly
68a7000f5d Bug 1221351 P1 ServiceWorkerContainer and ServiceWorkerRegistration should not crash for null window owner. r=catalinb 2015-11-05 09:33:33 -08:00
Nathan Froyd
01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Andrew McCreight
5171450b27 Bug 1197893 - Check the number of arguments for ThrowTypeError() and ThrowRangeError() at compile time. r=peterv 2015-10-05 09:38:14 -07:00
Wes Kocher
f0d829220d Backed out changeset 821791826960 (bug 1197893) for Nexus build failures CLOSED TREE 2015-10-02 16:17:05 -07:00
Andrew McCreight
35cd15b8de Bug 1197893 - Check the number of arguments for ThrowTypeError() and ThrowRangeError() at compile time. r=peterv 2015-10-02 15:09:02 -07:00
Andrew McCreight
7a2c6267d4 Backed out changeset 6fa9cdf4002b for breaking the build. 2015-10-02 10:49:28 -07:00
Andrew McCreight
404740a102 Bug 1197893 - Check the number of arguments for ThrowTypeError() and ThrowRangeError() at compile time. r=peterv 2015-10-02 10:42:08 -07:00
Catalin Badea
76c7d43fd9 Bug 1188545 - Disentangle service workers from shared workers and refactor event dispatching code into a separate class. r=nsm,mrbkap 2015-09-30 19:11:03 -04:00
Wes Kocher
6fbdec2422 Backed out 12 changesets (bug 1188545) for test_fetch_cors failures CLOSED TREE
Backed out changeset e04738ee72a3 (bug 1188545)
Backed out changeset 1989893b59de (bug 1188545)
Backed out changeset 11ff29cc25d8 (bug 1188545)
Backed out changeset 4b6bdf859845 (bug 1188545)
Backed out changeset 76eb7ffeca2a (bug 1188545)
Backed out changeset 4473e036b52e (bug 1188545)
Backed out changeset 2a28cb794b23 (bug 1188545)
Backed out changeset 1fa2f55727f3 (bug 1188545)
Backed out changeset 032f4c24fc34 (bug 1188545)
Backed out changeset 4be675dc1b37 (bug 1188545)
Backed out changeset d5d05def5b17 (bug 1188545)
Backed out changeset e94f12b0bcf3 (bug 1188545)
2015-09-30 11:11:47 -07:00
Catalin Badea
c537f8c503 Bug 1188545 - Disentangle service workers from shared workers and refactor event dispatching code into a separate class. r=nsm,mrbkap 2015-09-30 10:14:33 -04:00
Nikhil Marathe
fe819ad8d7 Bug 1180861 - Various ServiceWorker registration fixes to get test passing. r=bkelly,jgraham.
This commit implements the following changes to get registration.https.html working.
1) Fail with NS_ERROR_DOM_SECURITY_ERR where the spec requires it.
2) Propagate JSExnType to ServiceWorkerManager::HandleError() so that a JS
   exception object with the correct .name can be created.
3) Fail with security error on redirect failure.
4) Check fetched script's mimetype.
5) Add missing python server files for web-platform-tests.
6) Update web-platform-tests expected data.
7) Several tests have been changed to use TypeError or more appropriate JS
   errors based on my reading of the spec.

--HG--
extra : commitid : IxWo2IVUweU
extra : rebase_source : c3c1ead153027bf84e7f239fd7125224fe25c3c0
2015-08-19 16:21:25 -07:00
Andrea Marchesini
24bd2e4412 Bug 1185640 - serviceworker register() should not accept escaped slashes. r=bkelly
--HG--
extra : commitid : 7XFc06lyJkq
extra : rebase_source : 4be886456a92e53e69ac35afd5213d7b7751cb7c
2015-08-19 13:23:58 -07:00
Nikhil Marathe
1c3ca8257a Bug 1194562 - Pass wide strings to ThrowTypeError. r=mccr8 2015-08-18 12:59:44 -07:00
Nikhil Marathe
5cf1847cde Bug 1181037 - Use entry settings object's base URL. r=ehsan
The second test, which checks for NetworkError is incorrect.
[[Update]] step 12 states:
"If response is a network error or response's status is not in the range 200 to 299, then:
  1. Reject p with a TypeError."

which specifically converts the NetworkError (due to 404) to a TypeError.

Also fixes controller-on-reload.https.html

Update web-platform-tests expected data

--HG--
extra : commitid : LUdPR44iiv2
extra : rebase_source : 6774faa1417ce585161750f14bf233d7382bea68
2015-08-20 13:56:37 -07:00
Nigel Babu
d78ab7197e Backed out changeset f447f7b8190b (bug 1185640) for W8 failures on CLOSED TREE
--HG--
extra : amend_source : 1fca18be89fda404fb71c3f0c8550011ded2d7de
2015-08-20 16:12:00 +05:30
Andrea Marchesini
c59e2e345a Bug 1185640 - ServiceWorkers - Passing a scope or scriptURL to register() with escaped '/' or '\' should fail, r=bkelly 2015-08-20 08:46:01 +01:00
Ryan VanderMeulen
1e86901d36 Backed out changeset 4a8f45990368 (bug 1185640) for causing serviceworker w-p-t permacrashes.
CLOSED TREE
2015-08-13 10:13:55 -04:00
Andrea Marchesini
2792224a7f Bug 1185640 - Passing a scope or scriptURL to register() with escaped '/' or '\' should fail, r=bkelly 2015-08-13 11:34:52 +01:00
Nikhil Marathe
0d07229d06 Bug 1190703 - Relax scope resolution assertion in ServiceWorkerContainer::Register. r=bkelly
--HG--
extra : commitid : 2VyBa3KOyIV
extra : rebase_source : 81940c62d45ce34df1ce60f33ac90f762acee937
extra : amend_source : d0c955ca481b3a473d698176fea9aed407443ff4
2015-08-05 14:33:50 -07:00
Ben Kelly
55e3066722 Bug 1181887 Fall back to network if ServiceWorker script fails to load. r=ehsan r=khuey 2015-07-15 12:21:40 -07:00
Hiroyuki Ikezoe
47d5b2db66 Bug 1179982 - Fix all compile errors in dom/workers on non-unified build. r=mrbkap 2015-07-02 14:54:00 +02:00
Andrea Marchesini
43fb37cc29 Bug 1177621 - SharedWorkers should not be shared between a private and a non-private documents, r=nsm 2015-06-26 11:18:18 -07:00
Morris Tseng
066c9f47e0 Bug 1172405 - Fix build error when adding files to dom/workers and gfx/layers. r=nical
CLOSED TREE
2015-06-08 02:28:00 -04:00
Andrea Marchesini
a71e717b67 Bug 1162088 - patch 1 - ServiceWorkerManager should use OriginAttributes from the principal as scopeKey, r=nsm, r=bholley 2015-06-03 09:43:43 +01:00
Catalin Badea
8b1fbc7805 Bug 1130684 - Implement Service Worker clients.claim. r=nsm,ehsan
--HG--
extra : rebase_source : ea1da8f6dfd8d31936c0ae495ec262581c9e5775
2015-05-14 12:41:42 -07:00
Andrew McCreight
9e8f4b219e Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Boris Zbarsky
dc24477d79 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Nikhil Marathe
5ffa8c89b7 Bug 1130688 - Implement additional scope checking in service worker registration. r=bkelly,ehsan
--HG--
extra : amend_source : 19663c098313445da8c3c271cea59dc366207d43
extra : transplant_source : %CFl%F7%92%0B%22%5D%CB%10%DE%B6%3F%19%1AW%DA%D9%0FS%85
2015-03-09 18:57:06 -07:00
Ehsan Akhgari
0996dfac83 Bug 1140120 - Remove a couple of unused test functions on ServiceWorkerContainer; r=baku 2015-03-06 08:19:32 -05:00
Nikhil Marathe
ab3efc22ff Bug 1081293 - Silently ignore lack of ServiceWorkerManager when shutting down ServiceWorkerContainer. r=baku
--HG--
extra : rebase_source : 65066288a5cec4bb9e97adbaf6bbe9cd32835394
extra : amend_source : b3e2cd0f05150d290050d99926fb0d48659929d4
2015-01-23 11:23:55 -08:00
Nikhil Marathe
d374da2039 Bug 1113555 - Update ServiceWorker registration lifecycle. r=baku
Folded:
Allow file: serviceworkers
Registration fixes WIP
Queue updatefound instead of immediately firing
Initial "atomically" steps of registration should also be a part of the job
Fix some compiler errors
Be sure not to null out various workers too early during activation
Integrated ServiceWorkerGlobalScope::Update into the ServiceWorkerRegisterJob.

--HG--
extra : rebase_source : 14dd02d18e1209147acd3fd118807c9bd8d4d300
2014-12-19 02:00:29 -08:00
Andrea Marchesini
c33db444da Bug 1025077 - patch 2 - ServiceWorkerContainer should unregister its promise on dtor, r=nsm 2014-08-28 17:04:51 +01:00
Andrea Marchesini
51c5e60fe1 Bug 1025077 - Implement ServiceWorkerContainer.ready, r=nsm 2014-08-26 09:16:03 +01:00
Nikhil Marathe
231b875967 Bug 1057135 - ServiceWorkerManager::Register() uses entry global. r=ehsan
--HG--
extra : transplant_source : %B1%3F%EA%17%81%DB%D6%EC%8A%86%3C%EE%D7%A9x%C7%0B%CD2%A0
2014-08-21 16:31:12 -07:00
Andrea Marchesini
401a133406 Bug 1002571 - Implement navigator.serviceWorker.getRegistrations. r=nsm 2014-08-20 11:40:00 -04:00
Andrea Marchesini
1355a04e72 Bug 1043004 - Update ServiceWorkerContainer API to spec. r=bkelly 2014-08-19 09:56:00 -04:00
Lynn Tran
7bec1a6b6d Bug 1041335 - Add a mozilla::services getter for nsIServiceWorkerManager; r=ehsan 2014-08-18 21:13:14 -04:00
Nikhil Marathe
721e6c9846 Bug 1002570 - Return valid ServiceWorker instances for .installing, .waiting, .active and .controller. r=ehsan
--HG--
extra : transplant_source : %B2%1D%A4%8D%04%E9%BE%D9%C1%CC%C89%F0%07%07%15%B1Df%F1
2014-07-23 14:05:08 -07:00
Boris Zbarsky
92fb7dde3a Bug 1040263. Eagerly create and preserve Promise reflectors so we always have them available during unlink. r=nsm,bholley. 2014-07-18 21:31:11 -04:00
Nikhil Marathe
77a88e4eeb Bug 983497 - Patch 1: Infrastructure to fire events on ServiceWorkerContainers. r=ehsan,smaug
--HG--
extra : transplant_source : S1z%F3%86%E5%CF%D6%3BWW%8E%1A%90%A3%94%7E%FE%E3z
2014-07-14 14:15:23 -07:00
Nikhil Marathe
98d53f31bc Bug 984048 - Patch 6 - Scope ordering and utility functions. r=ehsan,khuey
Added r=khuey via IRC to validate webidl DOM peer check.

--HG--
extra : rebase_source : 0aa1a6bcdc0f2ec8c5cd8af44d39afb62b1d4abf
2014-07-11 11:52:19 -07:00
Nikhil Marathe
4a3b901700 Bug 1025082 - ServiceWorker related WebIDL changes. r=ehsan,jst
--HG--
extra : amend_source : c8d89097ddfb423ba2eb39beb469c48b69944a89
2014-06-17 11:01:28 -07:00
Nikhil Marathe
38e0d68766 Bug 984048: Part 1 - ServiceWorkerManager Register(). r=ehsan 2013-11-19 15:15:02 -08:00
Ryan VanderMeulen
4b8339eede Backed out changeset 3add0c55a799 (bug 984048) for mochitest-e10s timeouts. 2014-05-29 15:02:41 -04:00