Push: Fix crash when dispatching push to a registration with no active worker
A registration could have no active worker in some cases:
- The browser shut down while there was a waiting worker. When the browser
starts up again, there will be no active worker until the waiting worker
is promoted (see
ServiceWorkerControlleeRequestHandler::DidLookupRegistrationForMainResource)
- The active worker was evicted, because it unexpectedly couldn't be read
from the disk cache: crbug.com/448003
- The subscription occurred while the registration had an active worker in
the activating state, but then activation failed and the worker was booted
(however this behavior will soon change: crbug.com/480050)
BUG=483335
Review URL: https://codereview.chromium.org/
1131713003
Cr-Commit-Position: refs/heads/master@{#328940}