GNOME Bugzilla – Bug 693832
[WK2] Needs to reload pages or show an error page when WebProcess dies
Last modified: 2013-03-11 12:41:21 UTC
Right now we just do nothing and a blank page is shown unil the user reloads manually. I believe this depends on some WK2 patches that have yet to land.
Created attachment 237254 [details] [review] page-crash.diff This (together with the corresponding wk patch), does the trick. One doubt I have though: loading a page when the web process has crashed is problematic, because obviously you need it to re-spawn again for things to work. I'm using an idle to get it done, but perhaps we could just have a static image or something? Not sure.
(In reply to comment #1) > Created an attachment (id=237254) [details] [review] > page-crash.diff > > This (together with the corresponding wk patch), does the trick. > > One doubt I have though: loading a page when the web process has crashed is > problematic, because obviously you need it to re-spawn again for things to > work. I'm using an idle to get it done, but perhaps we could just have a static > image or something? Not sure. That's a good point, maybe we could show a custom widget in the overlay instead of loading a web page to avoid that problem.
(In reply to comment #2) > > That's a good point, maybe we could show a custom widget in the overlay instead > of loading a web page to avoid that problem. Yes, that's what I thought, but obviosuly that complicates the code considerably. If there is any way to do this that is safer than an idle perhaps we could just go for it, I think in general it makes sense to use web pages as much as possible. Is there any method we can call to force the WebProcess to respawn?
Loading the error page will re-spawn the web process.
(In reply to comment #4) > Loading the error page will re-spawn the web process. This is what I thought but doing it in the callback of the process-crashed signal does not actually work. Perhaps it should, but then there is a bug somewhere.
Pushed to master with some changes, closing.