From afbf9210e80256f2628f767115b2417a6e6a2e98 Mon Sep 17 00:00:00 2001
From: Xavier Morel <xmo@odoo.com>
Date: Fri, 6 Dec 2019 08:58:04 +0000
Subject: [PATCH] [FIX] web: client-side RPC error to have an arguments data
 member

Several XHR error handlers expect a data.arguments member which holds
the args tuple from the Python exception.

Some have alternate codepaths for "xhr errors" but several
don't (e.g. addons/payment/static/src/js/payment_form.js:142,
addons/web/static/src/js/services/crash_manager.js:229,
addons/website/static/src/js/content/website_root.js:167) and will
thus blow up on synthetic client-side xhr errors.

Modify the synthetic errors so they provide that member as an array.
---
 addons/web/static/src/js/core/ajax.js | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/addons/web/static/src/js/core/ajax.js b/addons/web/static/src/js/core/ajax.js
index bc5250ab6201..cf5fe87b2ae1 100644
--- a/addons/web/static/src/js/core/ajax.js
+++ b/addons/web/static/src/js/core/ajax.js
@@ -87,7 +87,8 @@ function _genericJsonRpc (fct_name, params, settings, fct) {
                     data: {
                         type: "xhr"+textStatus,
                         debug: error.responseText,
-                        objects: [error, errorThrown]
+                        objects: [error, errorThrown],
+                        arguments: [reason || textStatus]
                     },
                 };
                 reject({message: nerror, event: $.Event()});
-- 
GitLab