Merge branch 'ThamiMemel/geary-sandboxing_issue_#842' into 'mainline'

WebKitGTK WebProcess updates

Closes #842

See merge request GNOME/geary!639
This commit is contained in:
Michael Gratton 2021-01-20 12:27:41 +00:00
commit 29014624dc

View file

@ -79,9 +79,12 @@ public abstract class Components.WebView : WebKit.WebView, Geary.BaseInterface {
File cache_dir) {
WebsiteDataManager data_manager = new WebsiteDataManager(cache_dir.get_path());
WebKit.WebContext context = new WebKit.WebContext.with_website_data_manager(data_manager);
// Use the doc viewer model since each web view instance only
// ever shows a single HTML document.
context.set_cache_model(WebKit.CacheModel.DOCUMENT_VIEWER);
// Enable WebProcess sandboxing
context.add_path_to_sandbox(web_extension_dir.get_path(), true);
context.set_sandbox_enabled(true);
// Use the doc browser model so that we get some caching of
// resources between email body loads.
context.set_cache_model(WebKit.CacheModel.DOCUMENT_BROWSER);
context.register_uri_scheme("cid", (req) => {
WebView? view = req.get_web_view() as WebView;