summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/chrome/abstract_web_client.js
diff options
context:
space:
mode:
authorfja-odoo <fja@odoo.com>2019-06-11 12:26:41 +0000
committerfja-odoo <fja@odoo.com>2019-06-28 08:53:52 +0000
commite6d4ab84da7a1031ab552b4a6b3fc4aa2348163e (patch)
tree8bcbf948e5cbb215b64fce2306d5b86a87a2104e /addons/web/static/src/js/chrome/abstract_web_client.js
parent2cbbc88dabcbe11baca2f3e30ec7425af39141e4 (diff)
[REF] web: move rpc_error binding into the crash_manager
Moving the rpc_error binding into the crash manager is mandatory for it to be used in the website. Part of https://github.com/odoo/odoo/pull/32132 task-1894820
Diffstat (limited to 'addons/web/static/src/js/chrome/abstract_web_client.js')
-rw-r--r--addons/web/static/src/js/chrome/abstract_web_client.js40
1 files changed, 0 insertions, 40 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 6b7df97b767..5adaaa36783 100644
--- a/addons/web/static/src/js/chrome/abstract_web_client.js
+++ b/addons/web/static/src/js/chrome/abstract_web_client.js
@@ -202,46 +202,6 @@ var AbstractWebClient = Widget.extend(ServiceProviderMixin, KeyboardNavigationMi
});
core.bus.on('connection_lost', this, this._onConnectionLost);
core.bus.on('connection_restored', this, this._onConnectionRestored);
-
- // crash manager integration
- core.bus.on('rpc_error', crash_manager, crash_manager.rpc_error);
- window.onerror = function (message, file, line, col, error) {
- // Scripts injected in DOM (eg: google API's js files) won't return a clean error on window.onerror.
- // The browser will just give you a 'Script error.' as message and nothing else for security issue.
- // To enable onerror to work properly with CORS file, you should:
- // 1. add crossorigin="anonymous" to your <script> tag loading the file
- // 2. enabling 'Access-Control-Allow-Origin' on the server serving the file.
- // Since in some case it wont be possible to to this, this handle should have the possibility to be
- // handled by the script manipulating the injected file. For this, you will use window.onOriginError
- // If it is not handled, we should display something clearer than the common crash_manager error dialog
- // since it won't show anything except "Script error."
- // This link will probably explain it better: https://blog.sentry.io/2016/05/17/what-is-script-error.html
- if (!file && !line && !col) {
- // Chrome and Opera set "Script error." on the `message` and hide the `error`
- // Firefox handles the "Script error." directly. It sets the error thrown by the CORS file into `error`
- if (window.onOriginError) {
- window.onOriginError();
- delete window.onOriginError;
- } else {
- crash_manager.show_error({
- type: _t("Odoo Client Error"),
- message: _t("Unknown CORS error"),
- data: {debug: _t("An unknown CORS error occured. The error probably originates from a JavaScript file served from a different origin. (Opening your browser console might give you a hint on the error.)")},
- });
- }
- } 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"),
- message: message,
- data: {debug: file + ':' + line + "\n" + _t('Traceback:') + "\n" + traceback},
- });
- }
- };
},
set_action_manager: function () {
var self = this;