From 8041b935d8aad8c9f25ddef7a7681b7a2e6d1570 Mon Sep 17 00:00:00 2001 From: Christophe Chauvet Date: Wed, 9 Dec 2009 18:42:54 +0100 Subject: [PATCH] [FIX] #494620 missing company_id in domain that return the bad company when there is a multiple rules for teh same object lp bug: https://launchpad.net/bugs/494620 fixed bzr revid: christophe.chauvet@syleam.fr-20091209174254-pu5oxg8e4saqd48p --- bin/addons/base/res/res_company.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bin/addons/base/res/res_company.py b/bin/addons/base/res/res_company.py index acd1e85a184..7ec19a971ff 100644 --- a/bin/addons/base/res/res_company.py +++ b/bin/addons/base/res/res_company.py @@ -94,13 +94,14 @@ class res_company(osv.osv): """ if not context: context = {} + user_company_id = self.pool.get('res.users').browse(cr, uid, uid).company_id.id proxy = self.pool.get('multi_company.default') - ids = proxy.search(cr, uid, [('object_id.model', '=', object)]) + ids = proxy.search(cr, uid, [('object_id.model', '=', object), ('company_id','=',user_company_id)]) for rule in proxy.browse(cr, uid, ids, context): user = self.pool.get('res.users').browse(cr, uid, uid) if eval(rule.expression, {'context': context, 'user': user}): return rule.company_dest_id.id - return self.pool.get('res.users').browse(cr, uid, uid).company_id.id + return user_company_id def _get_child_ids(self, cr, uid, uid2, context={}): company = self.pool.get('res.users').company_get(cr, uid, uid2)