changeset 0d12d9b6e27b in trytond:default
details: https://hg.tryton.org/trytond?cmd=changeset;node=0d12d9b6e27b
description:
        Do not reuse browse list of modules once some have been deleted

        The browse list keep a reference to the deleted modules, so a read error
        may be raised when accessing an attribute of any record of the list.

        issue9567
        review318151002
diffstat:

 trytond/ir/module.py |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (21 lines):

diff -r 0131ce3e6648 -r 0d12d9b6e27b trytond/ir/module.py
--- a/trytond/ir/module.py      Sat Sep 05 23:40:29 2020 +0200
+++ b/trytond/ir/module.py      Wed Sep 09 23:36:33 2020 +0200
@@ -281,14 +281,14 @@
         module_names = get_module_list()
 
         modules = cls.search([])
-        name2module = dict((m.name, m) for m in modules)
+        name2id = dict((m.name, m.id) for m in modules)
         cls.delete([m for m in modules
                 if m.state != 'activated' and m.name not in module_names])
 
         # iterate through activated modules and mark them as being so
         for name in module_names:
-            if name in name2module:
-                module = name2module[name]
+            if name in name2id:
+                module = cls(name2id[name])
                 tryton = get_module_info(name)
                 cls._update_dependencies(module, tryton.get('depends', []))
                 continue

Reply via email to