]> granicus.if.org Git - postgresql/commit
Fix mapping of PostgreSQL encodings to Python encodings.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Thu, 5 Jul 2012 19:16:29 +0000 (22:16 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Thu, 5 Jul 2012 19:32:04 +0000 (22:32 +0300)
commit138313ebaa985030d75d429c3b3cb7138e62b10f
tree0a894fd991890fee743a7099355b157c527c59c7
parentb8aca12d77612007ebde22db14e3971ef664d553
Fix mapping of PostgreSQL encodings to Python encodings.

Windows encodings, "win1252" and so forth, are named differently in Python,
like "cp1252". Also, if the PyUnicode_AsEncodedString() function call fails
for some reason, use a plain ereport(), not a PLy_elog(), to report that
error. That avoids recursion and crash, if PLy_elog() tries to call
PLyUnicode_Bytes() again.

This fixes bug reported by Asif Naeem. Backpatch down to 9.0, before that
plpython didn't even try these conversions.

Jan UrbaƄski, with minor comment improvements by me.
src/pl/plpython/plpython.c