From f91fc3b74fdb481fd71305970346457144d7d935 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Tue, 8 Jan 2013 14:07:16 +0100 Subject: [PATCH] [FIX] message_post: now handles partner_ids parameter with extra-caution, creating a set of sets. If partner_ids is a list of ids, or a list of commands under list form, this should work as well. bzr revid: tde@openerp.com-20130108130716-hea1fomxog5an61r --- addons/mail/mail_thread.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/addons/mail/mail_thread.py b/addons/mail/mail_thread.py index af18abb67e5..fc6d4ad9dd2 100644 --- a/addons/mail/mail_thread.py +++ b/addons/mail/mail_thread.py @@ -948,7 +948,15 @@ class mail_thread(osv.AbstractModel): partner_ids.add((4, parent_message.author_id.id)) # 1.A.3: add specified recipients - partner_ids |= set(kwargs.pop('partner_ids', [])) + param_partner_ids = set() + for item in kwargs.pop('partner_ids', []): + if isinstance(item, (list)): + param_partner_ids.add((item[0], item[1])) + elif isinstance(item, (int, long)): + param_partner_ids.add((4, item)) + else: + param_partner_ids.add(item) + partner_ids |= param_partner_ids # 1.B: handle body, message_type and message_subtype if content_subtype == 'plaintext':