summaryrefslogtreecommitdiff
path: root/odoo/service/model.py
diff options
context:
space:
mode:
Diffstat (limited to 'odoo/service/model.py')
-rw-r--r--odoo/service/model.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/odoo/service/model.py b/odoo/service/model.py
index 8f419e1c61d..9673b6f98c9 100644
--- a/odoo/service/model.py
+++ b/odoo/service/model.py
@@ -1,5 +1,6 @@
# -*- coding: utf-8 -*-
+from contextlib import closing
from functools import wraps
import logging
from psycopg2 import IntegrityError, OperationalError, errorcodes
@@ -73,7 +74,7 @@ def check(f):
# We open a *new* cursor here, one reason is that failed SQL
# queries (as in IntegrityError) will invalidate the current one.
- with odoo.sql_db.db_connect(dbname).cursor() as cr:
+ with closing(odoo.sql_db.db_connect(dbname).cursor()) as cr:
if ttype == 'sql_constraint':
res = translate_sql_constraint(cr, key=key, lang=lang)
else: