diff options
| author | Nicolas Lempereur <nle@odoo.com> | 2019-01-15 16:03:02 +0000 |
|---|---|---|
| committer | Nicolas Lempereur <nle@odoo.com> | 2019-04-26 11:53:38 +0000 |
| commit | b09d20ab29a13e1b6c851b67beb81bcf0dbd7d42 (patch) | |
| tree | 4babe54336229974ed6f25da25e38ca8f48c9c4a /addons/web/static/src | |
| parent | bc27113cf50c0ced19d1e3668bf5c3af15b1e526 (diff) | |
[FIX] web: no ResizeObserver video error on chrome
When displaying a video, with the browser window at a certain size, or
resizing it (or opening developer tools) we could the following error:
"ResizeObserver loop limit exceeded"
This can be reproduced in chromium just with this JS code:
window.onerror = function(e){ console.log(e); };
document.body.innerHTML = '<div><video controls src="v.webm"/>';
The issue only happen if:
- the video server does not support HTTP range requests
- the controls are displayed on the video
- browser size is in problematic size/resized to problematic size
And the error is raised in window.onerror but not displayed in the
developer console.
With this change, we ignore these errors until fixed in chromium.
chromium bug tracker: https://crbug.com/809574
backport of 12.0 535da9e (in pr #30239) since video loader was in 11.0
opw-1928512
closes #32983
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Diffstat (limited to 'addons/web/static/src')
| -rw-r--r-- | addons/web/static/src/js/chrome/abstract_web_client.js | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/addons/web/static/src/js/chrome/abstract_web_client.js b/addons/web/static/src/js/chrome/abstract_web_client.js index 20576a168f9..5b787fa37ff 100644 --- a/addons/web/static/src/js/chrome/abstract_web_client.js +++ b/addons/web/static/src/js/chrome/abstract_web_client.js @@ -191,6 +191,10 @@ var AbstractWebClient = Widget.extend(mixins.ServiceProvider, { }); } } else { + // ignore Chrome video internal error: https://crbug.com/809574 + if (!error && message === 'ResizeObserver loop limit exceeded') { + return; + } var traceback = error ? error.stack : ''; crash_manager.show_error({ type: _t("Odoo Client Error"), |
