From a75ebb628c302a54e4607cbe7119e61fd227c9b9 Mon Sep 17 00:00:00 2001 From: Martin Trigaux Date: Fri, 17 Jan 2014 13:02:35 +0100 Subject: [PATCH] [IMP] search_read: avoid calling read if search only on id column (security rules already triggered with search) bzr revid: mat@openerp.com-20140117120235-zdj7pjd8xnnrnqol --- openerp/osv/orm.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/openerp/osv/orm.py b/openerp/osv/orm.py index 1f15eee93c0..1653da78136 100644 --- a/openerp/osv/orm.py +++ b/openerp/osv/orm.py @@ -5452,6 +5452,11 @@ class BaseModel(object): record_ids = self.search(cr, uid, domain or [], offset, limit or False, order or False, context or {}) if not record_ids: return [] + + if fields and fields == ['id']: + # shortcut read if we only want the ids + return [{'id': id} for id in record_ids] + result = self.read(cr, uid, record_ids, fields or [], context or {}) # reorder read if len(result) >= 1: