Re: Re: [COMMITTERS] pgsql: Force strings passed to and from plperl to be in UTF8 encoding.
Alex Hunsaker <badalex@gmail.com>
From: Alex Hunsaker <badalex@gmail.com>
To: Amit Khandekar <amit.khandekar@enterprisedb.com>
Cc: Andrew Dunstan <andrew@dunslane.net>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2011-10-03T17:07:01Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Force strings passed to and from plperl to be in UTF8 encoding.
- 50d89d422f9c 9.1.0 cited
On Mon, Oct 3, 2011 at 04:20, Amit Khandekar <amit.khandekar@enterprisedb.com> wrote: > Is there a plan to commit this issue? I am still seeing this issue on > PG 9.1 STABLE branch. Attached is a small patch that targets only the > specific issue in the described testcase : > > create or replace function zerob() returns text as $$ return > "abcd\0efg"; $$ language plperl; > SELECT zerob(); > > The patch does the perl data validation in the function utf_u2e() itself. I think thats fine, but as coded it will verify the string twice in the GetDatabaseEncoding() != PG_UTF8 case (once for pg_do_encoding_conversion() and again with the added pg_verify_mbstr_len), which seems a bit wasteful. It might be worth adding a regression test also...