Re: [ServiceWorker] Clients.claim() does not deal with a client already controlled by another registration (#682)

In @nikhilm's example, imagine the registration with scope `/a` has an active worker and a waiting worker. The waiting worker cannot become active until all its clients are gone. It only has one client, `/a/b/c/d.html`.

* New registration with scope `/a/b/c` is created
* SW for `/a/b/c` activates
* SW for `/a/b/c` calls `clients.claim()`
* `/a/b/c/d.html` is now controlled by the registration at scope `/a/b/c`

This means the registration with scope `/a` now has no clients, so its waiting worker should become active. As @nikhilm says, calling Handle Service Worker Client Unload before [3.1.3.1](https://slightlyoff.github.io/ServiceWorker/spec/service_worker/#clients-claim) should make this possible.

---
Reply to this email directly or view it on GitHub:
https://github.com/slightlyoff/ServiceWorker/issues/682#issuecomment-95229504

Received on Wednesday, 22 April 2015 15:14:45 UTC