diff options
| author | fja-odoo <fja@odoo.com> | 2019-06-11 12:26:41 +0000 |
|---|---|---|
| committer | fja-odoo <fja@odoo.com> | 2019-06-28 08:53:52 +0000 |
| commit | e6d4ab84da7a1031ab552b4a6b3fc4aa2348163e (patch) | |
| tree | 8bcbf948e5cbb215b64fce2306d5b86a87a2104e /addons/web/static/src/js/chrome | |
| parent | 2cbbc88dabcbe11baca2f3e30ec7425af39141e4 (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')
| -rw-r--r-- | addons/web/static/src/js/chrome/abstract_web_client.js | 40 |
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; |
