vals may be an empty dict This may happen a write is done on a computed field, the call to _write will be empty (still needed to update write_uid/date). Before this commit, all fields were read in the read call. This was unecessary and may produce acess-rights errors or other side effect (e.g. in odoo/enterprise#3778 the technical field ticket_count was read, even if not present in the view or the write call) Only compute old_values on the fields that are modified Fixes odoo/enterprise#3778 opw-1949911 closes odoo/odoo#31737 Signed-off-by: Raphael Collet (rco) <rco@openerp.com>