From 188930bb01e93d7d142d19c2ac171814257347dc Mon Sep 17 00:00:00 2001 From: Olivier Dony Date: Mon, 5 May 2014 09:46:36 +0200 Subject: [PATCH] [FIX] convert: gracefully ignore missing XML IDs when processing tags + warn in log bzr revid: odo@openerp.com-20140505074636-bl2y5pst4pfmpz3u --- openerp/tools/convert.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/openerp/tools/convert.py b/openerp/tools/convert.py index 870f9d19dd2..bd7c214fd24 100644 --- a/openerp/tools/convert.py +++ b/openerp/tools/convert.py @@ -266,12 +266,17 @@ form: module.record_id""" % (xml_id,) if d_search: idref = _get_idref(self, cr, self.uid, d_model, context={}, idref={}) - ids = self.pool.get(d_model).search(cr, self.uid, unsafe_eval(d_search, idref)) + try: + ids = self.pool.get(d_model).search(cr, self.uid, unsafe_eval(d_search, idref)) + except ValueError: + _logger.warning('Skipping deletion for failed search `%r`', d_search, exc_info=True) + pass if d_id: try: ids.append(self.id_get(cr, d_id)) - except: + except ValueError: # d_id cannot be found. doesn't matter in this case + _logger.warning('Skipping deletion for missing XML ID `%r`', d_id, exc_info=True) pass if ids: self.pool.get(d_model).unlink(cr, self.uid, ids)