diff --git a/pwa/src/offline-interface/offline-interface.js b/pwa/src/offline-interface/offline-interface.js index 9eee71bac..0daf626bc 100644 --- a/pwa/src/offline-interface/offline-interface.js +++ b/pwa/src/offline-interface/offline-interface.js @@ -31,8 +31,16 @@ export class OfflineInterface { } if ('serviceWorker' in navigator) { - navigator.serviceWorker.oncontrollerchange = () => + let reloading + navigator.serviceWorker.oncontrollerchange = () => { + if (reloading) { + // Fixes an infinite update loop when 'Update on reload' is + // checked in Chrome + return + } + reloading = true window.location.reload() + } } } /**