From: Mike Bayer Date: Mon, 14 Oct 2013 14:56:11 +0000 (-0400) Subject: workaround for #2838 here. still need to figure out why an ENUM test is suddenly... X-Git-Tag: rel_0_9_0b1~37 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=dbde70a3a23505ab462da3da8639ee22691a0788;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git workaround for #2838 here. still need to figure out why an ENUM test is suddenly hitting this. --- diff --git a/lib/sqlalchemy/sql/compiler.py b/lib/sqlalchemy/sql/compiler.py index 9f2abd6f58..22906af541 100644 --- a/lib/sqlalchemy/sql/compiler.py +++ b/lib/sqlalchemy/sql/compiler.py @@ -978,6 +978,13 @@ class SQLCompiler(Compiled): return repr(value) elif isinstance(value, decimal.Decimal): return str(value) + elif isinstance(value, util.binary_type): + # only would occur on py3k b.c. on 2k the string_types + # directive above catches this. + # see #2838 + value = value.decode(self.dialect.encoding).replace("'", "''") + return "'%s'" % value + else: raise NotImplementedError( "Don't know how to literal-quote value %r" % value)