From a32c9c4c1840f0803d4f7f9f05f36f140bb791f5 Mon Sep 17 00:00:00 2001 From: Fabien Pinckaers Date: Sat, 8 Jan 2011 12:38:31 +0100 Subject: [PATCH] merge bzr revid: fp@tinyerp.com-20110108113831-k1r3e7yscw801jgn --- bin/addons/__init__.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/bin/addons/__init__.py b/bin/addons/__init__.py index 9bab01cbb16..de662a9ff59 100644 --- a/bin/addons/__init__.py +++ b/bin/addons/__init__.py @@ -716,7 +716,11 @@ def load_module_graph(cr, graph, status=None, perform_checks=True, skip_modules= logger.notifyChannel('init', netsvc.LOG_INFO, 'module %s: loading objects' % package.name) migrations.migrate_module(package, 'pre') register_class(package.name) + l = {} + if pool.get('ir.model.data'): + l = pool.get('ir.model.data').loads modules = pool.instanciate(package.name, cr) + pool.get('ir.model.data').loads.update(l) if hasattr(package, 'init') or hasattr(package, 'update') or package.state in ('to install', 'to upgrade'): init_module_objects(cr, package.name, modules) cr.commit() @@ -781,6 +785,13 @@ def load_module_graph(cr, graph, status=None, perform_checks=True, skip_modules= statusi += 1 + cr.execute('select model from ir_model where state=%s', ('manual',)) + for model in cr.dictfetchall(): + pool.get('ir.model').instanciate(cr, 1, model['model'], {}) + + if not skip_cleanup: + # Cleanup orphan records + pool.get('ir.model.data')._process_end(cr, 1, package_todo+['base']) cr.commit() return processed_modules