[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #21766 [Applications/Tor Browser]: Tor Browser based on ESR52 with e10s enabled crashed while trying to download a file
#21766: Tor Browser based on ESR52 with e10s enabled crashed while trying to
download a file
-------------------------------------------------+-------------------------
Reporter: gk | Owner: mcs
Type: defect | Status:
| assigned
Priority: Very High | Milestone:
Component: Applications/Tor Browser | Version:
Severity: Critical | Resolution:
Keywords: ff52-esr, tbb-7.0-must-alpha, tbb- | Actual Points:
e10s, tbb-crash, TorBrowserTeam201705 |
Parent ID: | Points:
Reviewer: | Sponsor:
| Sponsor4
-------------------------------------------------+-------------------------
Comment (by mcs):
Replying to [comment:24 gk]:
> While pondering #21886 I was wondering whether it would help to just get
rid of the observer idea and leave the extension out of the picture: could
we just show a dialog at places where we are currently using the observer
mechanism?
We could try that, but I think the main problem is that a modal dialog is
displayed (as a cypherpunk mentioned somewhere). With e10s enabled, it
seems that while a modal dialog is open events related to the IPC
mechanism are not handled correctly. This causes the chrome process to
kill the content process (to the user, this appears as a tab crash).
Therefore I think we will still have a problem if we move the dialog into
the browser/C++ code.
Mozilla does show dialogs during a download, but they are not modal and
they do not block the network activity (so, for example, the download
proceeds while the user is answering the "What would you like to do with
this file? open/save" prompt. I assume we want to stop the network
activity as in Tor Browser 6.5.2.
The most promising approach seems to be to suspend and then resume the
request, but when e10s is enabled that does not work reliably when we try
it from any of the obvious locations, e.g., not from `DoContent()` inside
`uriloader/exthandler/nsExternalHelperAppService.cpp`, not from
`OnStartRequest()`, not inside the first call to `OnDataAvailable()`.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/21766#comment:25>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs