summaryrefslogtreecommitdiff
path: root/odoo/sql_db.py
diff options
context:
space:
mode:
Diffstat (limited to 'odoo/sql_db.py')
-rw-r--r--odoo/sql_db.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/odoo/sql_db.py b/odoo/sql_db.py
index a7c7d6fc54d..607bb9ba2b8 100644
--- a/odoo/sql_db.py
+++ b/odoo/sql_db.py
@@ -47,6 +47,19 @@ psycopg2.extensions.register_type(psycopg2.extensions.new_type((700, 701, 1700,)
import tools
+
+from tools import parse_version as pv
+if pv(psycopg2.__version__) < pv('2.7'):
+ from psycopg2._psycopg import QuotedString
+ def adapt_string(adapted):
+ """Python implementation of psycopg/psycopg2#459 from v2.7"""
+ if '\x00' in adapted:
+ raise ValueError("A string literal cannot contain NUL (0x00) characters.")
+ return QuotedString(adapted)
+
+ psycopg2.extensions.register_adapter(str, adapt_string)
+ psycopg2.extensions.register_adapter(unicode, adapt_string)
+
from tools.func import frame_codeinfo
from datetime import timedelta
import threading