From de85309fb1db7895b985440a3d998cea726b561a Mon Sep 17 00:00:00 2001 From: wolfbeast Date: Wed, 4 Jul 2018 23:58:35 +0200 Subject: On failure, save a dummy file from the background page thumb capture module. If a background page thumbnail capture fails (e.g. due to too heavy scripting), we should write -something- to the thumbnail cache, because otherwise it will try again and again, which is problematic for bad trap pages, that even if the user has left the page never to return again, the thumbnail service may still try to capture, and fail. This resolves the only problem for us in #592. --- toolkit/components/thumbnails/BackgroundPageThumbs.jsm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'toolkit/components/thumbnails') diff --git a/toolkit/components/thumbnails/BackgroundPageThumbs.jsm b/toolkit/components/thumbnails/BackgroundPageThumbs.jsm index fded51cea..bd52e77e9 100644 --- a/toolkit/components/thumbnails/BackgroundPageThumbs.jsm +++ b/toolkit/components/thumbnails/BackgroundPageThumbs.jsm @@ -468,7 +468,12 @@ Capture.prototype = { }; if (!data) { - done(); + // If this background attempt failed, cause a dummy file to be saved, so + // that gets loaded instead of attempting again (and again). + // XXX: Perhaps we can create a placeholder image to use instead of "null" + // here, so it has something to show to the user? + PageThumbs._store(this.url, this.url, null, true) + .then(done, done); return; } -- cgit v1.2.3