greatsuspender / thegreatsuspender

A chrome extension for suspending all tabs to free up memory
https://chrome.google.com/webstore/detail/the-great-suspender/klbibkeccnjlkjkiokjodocebajanakg/
GNU General Public License v2.0
5.03k stars 905 forks source link

Unsuspending about:blank wreaks havoc #1032

Open danbae56 opened 5 years ago

danbae56 commented 5 years ago

Please complete the following information when submitting a feature request or bug report.

I have written a Chrome extension which creates an about:blank page with info extracted from another web page. I have now twice noticed that when TGS suspends that about:blank tab and I subsequently unsuspend it, TGS basically crashes. All other tabs are immediately also unsuspended, the TGS menu in the toolbar goes blank (see image) and no timeout suspensions are executed. I have to restart the computer, remove TGS and reinstall it to restore functionality.

Of course I have now whitelisted about:blank but I think it might be useful for the developer to know about this issue.

danbae56 commented 5 years ago

More info on this issue: When I whitelist the about:blank page errors appear in the Extensions page in the TGS box. The menu goes blank in this case also.

(an aside: my extension uses background messaging. Can that interfere?)

These are the errors:

• tabProperties.url not set. Error Context _generated_background_page.html Stack Trace js/gsUtils.js:80 (Object.error) js/gsIndexedDb.js:121 (Object.addSuspendedTabInfo) js/gsTabSuspendManager.js:459 (saveSuspendData) js/gsTabSuspendManager.js:187 (Object.performSuspension [as executorFn])

• Error handling response: TypeError: whitelistString.split is not a function Context _generated_background_page.html Stack Trace js/gsUtils.js:278 (Object.checkSpecificWhiteList) js/gsUtils.js:711 (anonymous function) js/gsUtils.js:616 (anonymous function)

Error in event handler: TypeError: whitelistString.split is not a function Context _generated_background_page.html Stack Trace js/gsUtils.js:278 (Object.checkSpecificWhiteList) js/gsUtils.js:270 (Object.checkWhiteList) js/background.js:1339 (calculateTabStatus) js/background.js:792 (handleUnsuspendedTabStateChanged) js/background.js:1722 (anonymous function)

Uncaught (in promise) TypeError: whitelistString.split is not a function Context _generated_background_page.html Stack Trace js/gsUtils.js:278 (anonymous function)