diff options
| author | fja-odoo <fja@odoo.com> | 2020-05-13 08:52:12 +0000 |
|---|---|---|
| committer | fja-odoo <fja@odoo.com> | 2020-05-20 13:20:35 +0000 |
| commit | 049745c5fffcd11894cd5f9b38078c993d2ef969 (patch) | |
| tree | 0c52321af364561becd5fe193ddcc4ad9f71cb81 /addons/test_timer/tests/test_timer.py | |
| parent | e3b4f3ddf43f309eea7272fe78dcbb2eb4e90a6c (diff) | |
[FIX] web_editor: fix _view_get infinite recursion
The _view_get function is a recursive function used to retieve all the
views related to a view (inherited or t-called).
The issue is that by an odd set of circumstances it is possible to have
a loop in the view graph. Resulting in the recursive function being
called until a "maximum recursion depth exceeded" error occurs.
Example of a loop: A t-call B and A inherit from B
This is possible on an update of a view that has been forked by website:
If the view A was doing a t-call on B and is has been duplicated with
the arch modified.
When we update with the changes A now inherit from B instead of t-call B
Since the arch was modified it will not be updated so A will still
t-call B but the inherit_id of A is unchanged so it will be updated to
reference B resulting in a loop.
closes odoo/odoo#51620
X-original-commit: 63e1e84ebd7e609d6e06d83dc0f0092688b013eb
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
Diffstat (limited to 'addons/test_timer/tests/test_timer.py')
0 files changed, 0 insertions, 0 deletions
