Skip to content

The new bootstrap on Android breaks if the browser goes in background

STR:

  1. Open Tor Browser
  2. Click on Connect
  3. The connection starts
  4. Switch to another application or to the launcher
  5. Go back to the browser when it's supposed to be finished
  6. Notice that the progress bar has disappeared (so the browser should be bootstrapped)
  7. Click on cancel
  8. Clicking again on connect isn't possible (haven't checked the logs, but I guess it's already in the connected state, so it won't go there again)
We got the multimedia support!

record

Tested in the emulator with a fresh nightly, but I encountered the same bug in the current alpha on my Pixel 4a.

Useful logcat
05-08 15:37:53.446  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping's run is done
05-08 15:37:53.481  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 0% complete (starting)
05-08 15:37:54.000  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 5% complete (conn)
05-08 15:37:54.030  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 10% complete (conn_done)
05-08 15:37:54.077  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 14% complete (handshake)
05-08 15:37:54.165  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 15% complete (handshake_done)
05-08 15:37:54.166  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 75% complete (enough_dirinfo)
05-08 15:37:54.166  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 90% complete (ap_handshake_done)
05-08 15:37:54.166  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 95% complete (circuit_create)
05-08 15:37:58.723  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapping 100% complete (done)
05-08 15:37:58.723  8267  8289 I Gecko   : console.trace: TorConnect: 
05-08 15:37:58.723  8267  8289 I Gecko   : _/TorConnect.sys.mjs 886 _changeState
05-08 15:37:58.723  8267  8289 I Gecko   : _/TorConnect.sys.mjs 226 changeState
05-08 15:37:58.723  8267  8289 I Gecko   : _/TorConnect.sys.mjs 305 
05-08 15:37:58.723  8267  8289 I Gecko   : _trapRequest.sys.mjs 39 observe
05-08 15:37:58.723  8267  8289 I Gecko   : _TorProvider.sys.mjs 929 #processBootstrapStatus
05-08 15:37:58.723  8267  8289 I Gecko   : _TorProvider.sys.mjs 915 onBootstrapStatus
05-08 15:37:58.723  8267  8289 I Gecko   : _ControlPort.sys.mjs 1088 #handleNotification
05-08 15:37:58.723  8267  8289 I Gecko   : _ControlPort.sys.mjs 519 #startMessagePump
05-08 15:37:58.723  8267  8289 I Gecko   : 
05-08 15:37:58.723  8267  8289 I Gecko   : console.trace: TorConnect: 
05-08 15:37:58.723  8267  8289 I Gecko   : _/TorConnect.sys.mjs 189 end
05-08 15:37:58.723  8267  8289 I Gecko   : _/TorConnect.sys.mjs 891 _changeState
05-08 15:37:58.723  8267  8289 I Gecko   : _/TorConnect.sys.mjs 226 changeState
05-08 15:37:58.723  8267  8289 I Gecko   : _/TorConnect.sys.mjs 305 
05-08 15:37:58.723  8267  8289 I Gecko   : _trapRequest.sys.mjs 39 observe
05-08 15:37:58.723  8267  8289 I Gecko   : _TorProvider.sys.mjs 929 #processBootstrapStatus
05-08 15:37:58.723  8267  8289 I Gecko   : _TorProvider.sys.mjs 915 onBootstrapStatus
05-08 15:37:58.723  8267  8289 I Gecko   : _ControlPort.sys.mjs 1088 #handleNotification
05-08 15:37:58.723  8267  8289 I Gecko   : _ControlPort.sys.mjs 519 #startMessagePump
05-08 15:37:58.723  8267  8289 I Gecko   : 
05-08 15:37:58.724  8267  8289 I Gecko   : console.trace: TorConnect: 
05-08 15:37:58.724  8267  8289 I Gecko   : _/TorConnect.sys.mjs 159 begin
05-08 15:37:58.724  8267  8289 I Gecko   : _/TorConnect.sys.mjs 910 _changeState
05-08 15:37:58.724  8267  8289 I Gecko   : 
05-08 15:37:58.724  8267  8289 I Gecko   : console.info: TorConnect: Bootstrapped's run is done
05-08 15:38:02.655  8267  8289 I Gecko   : console.warn: TorConnect: Cannot cancel bootstrapping in the Bootstrapped state

/cc @clairehurst

Edited by Pier Angelo Vendrame
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information