From: Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr>
Date: Mon, 2 Apr 2012 15:08:04 +0000 (+0200)
Subject: fix quoting - was totally wrong on f16
X-Git-Tag: plcapi-5.1-1~6
X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=cc23df37cd243cb7446f372435c24813cdb1bcd5;p=plcapi.git

fix quoting - was totally wrong on f16
---

diff --git a/PLC/PostgreSQL.py b/PLC/PostgreSQL.py
index c9ea950e..eced84e4 100644
--- a/PLC/PostgreSQL.py
+++ b/PLC/PostgreSQL.py
@@ -12,7 +12,6 @@ psycopg2.extensions.register_type(psycopg2.extensions.UNICODE)
 # UNICODEARRAY not exported yet
 psycopg2.extensions.register_type(psycopg2._psycopg.UNICODEARRAY)
 
-import pgdb
 import types
 from types import StringTypes, NoneType
 import traceback
@@ -69,10 +68,12 @@ class PostgreSQL:
         else:
             try:
                 # up to PyGreSQL-3.x, function was pgdb._quote
+                import pgdb
                 return pgdb._quote(value)
             except:
-                # from PyGreSQL-4.0, it's a cursor method
-                return self.cursor()._quote(value)
+                # with PyGreSQL-4.x, use psycopg2's adapt
+                from psycopg2.extensions import adapt
+                return adapt (value)
 
     @classmethod
     def param(self, name, value):