| From: | Ronald Peterson <ron(at)hub(dot)yellowbank(dot)com> |
|---|---|
| To: | pgsql-general(at)postgresql(dot)org |
| Subject: | utf8 encoding problem with plperlu |
| Date: | 2015-07-15 14:14:34 |
| Message-ID: | CAJPRK8b5==HNrsrRy9C-uE394Uje+e4EyUtjF_TuRoB6mX9Tqg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
The following short function illustrates a problem I'm having with the
plperlu module.
CREATE OR REPLACE FUNCTION
doublezero ()
RETURNS VOID
AS $$
use Encode qw/encode decode/;
$pass = "double00";
elog( INFO, "$pass" );
$mspass = encode( 'UTF-16LE', qq("$pass") );
elog( INFO, "$mspass" );
$$ LANGUAGE plperlu
STRICT;
# select * from doublezero();
INFO: double00
CONTEXT: PL/Perl function "doublezero"
ERROR: invalid byte sequence for encoding "UTF8": 0x00 at line 8, <DATA>
line 558.
CONTEXT: PL/Perl function "doublezero"
I don't understand this. I need to pass $mspass to Active Directory, and
it the encoding is exactly as it should be, which is to say, it works for
strings that don't include two consecutive zeros. Is this a bug?
-R-
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Adrian Klaver | 2015-07-15 14:34:23 | Re: utf8 encoding problem with plperlu |
| Previous Message | Ryan King - NOAA Affiliate | 2015-07-15 14:13:53 | Re: could not create shared memory segment: Invalid argument |