Tor exiting during startup with "connect automatically" leads to "Try a bridge" page
Steps to reproduce:
- Open the first instance of Tor Browser.
- Switch on "connect automatically".
- Perform a successful bootstrap.
- Close the first instance.
- Open another instance of Tor Browser.
- Re-open the first instance of Tor Browser at the same time.
You get the "Tor Launcher" error window. Once the window is closed about:torconnect still shows the "Try a bridge" page, rather than the landing "Connect to tor" page.
This is technically a regression from #41921 (closed) because the bootstrap triggered by "connect automatically" now happens before TorProvider is initialised. But the bootstrap attempt awaits the TorProvider initialisation, and treats a failure as a bootstrap error, and hence TorConnect thinks the bootstrap failed due to censorship. Moreover, TorProviderTopics.ProcessExited is not fired in this situation where the provider dies so early.
This would be resolved by #43570, but it is not implemented for the 14.5. But I can fix this for 14.5 by having TorProviderTopics.ProcessExited fire in this other scenario.
Adding the Apps::Priority::Blocker label, but we can remove it if we decide this is low priority.