mullvad / browser-extension

Mullvad Browser Extension improves your browsing experience while using Mullvad VPN.
Other
191 stars 15 forks source link

Unhandled exceptions block page loads in Mullvad Browser sometimes #200

Open PieroV opened 7 months ago

PieroV commented 7 months ago

Tested in Mullvad Browser alpha 13.5a5.

Sometimes the pages don't load as expected (they remain in about:blank), and I get these errors in the console:

JSON.parse: unexpected character at line 1 column 1 of the JSON data 95 [background-BGJ26hj7.js:1](moz-extension://.../dist/assets/background-BGJ26hj7.js)
    S moz-extension://.../dist/assets/background-BGJ26hj7.js:1
    AsyncFunctionNext self-hosted:852

And, probably as a result:

AbortError: Actor 'Conduits' destroyed before query 'RuntimeMessage' was resolved [ConduitsParent.sys.mjs:362](resource://gre/modules/ConduitsParent.sys.mjs)
    _raceResponses resource://gre/modules/ConduitsParent.sys.mjs:362

I'm not sure of the exact STR, but it happened to me several times.

PieroV commented 7 months ago

After chatting with Rui, we found the proxy list in my browser has been somehow truncated and therefore isn't a valid JSON:

[{"country":"Albania","cities":[{"city":"Tirana","proxyList":[{"online":true,"hostname":"al-tia-wg-socks5-001.relays.mullvad.net","ipv4_address":"10.124.0.155","ipv6_address":"fd00:aaaa::155","location":{"city":"Tirana","code":"al-tia","country":"Albania","longitude":19.819025,"latitude":41.327953,"countryCode":"al"},"port":1080,"weight":100},{"online":true,"hostname":"al-tia-wg-socks5-002.relays.mullvad.net","ipv4_address":"10.124.0.212","ipv6_address":"fd00:aaaa::212","location":{"city":"Tirana","code":"al-tia","country":"Albania","longitude":19.819025,"latitude":41.327953,"countryCode":"al"},"port":1080,"weight":100}]}]},{"country":"Australia","cities":[{"city":"Adelaide","proxyList":[{"online":true,"hostname":"au-adl-wg-socks5-301.relays.mullvad.net","ipv4_address":"10.124.0.99","ipv6_address":"fd00:aaaa::99","location":{"city":"Adelaide","code":"au-adl","country":"Australia","longitude":138.599503,"latitude":-34.92123,"countryCode":"au"},"port":1080,"weight":100},{"online":true,"h
PieroV commented 7 months ago

Notice that the string I pasted is 1000 characters. Sounds like it hit a limit somewhere.

ruihildt commented 7 months ago

I couldn't reproduce it by casually browsing around and using the proxy feature a bit.

I'll keep this open for a while in case someone else gets the same issue in the alpha cycle.