[FX.php List] Re-Patch for Surrogate-pair Character
Masayuki Nii
msyk at msyk.net
Sat Oct 10 04:47:58 MDT 2009
> > I recognize you (via your photo on your home page) from DevCons and
> > our PHP User Group meetings.
Hi Joel,
Thanks for DevCon's meeting.
> >
> > Thank you for posting this to the group!
So I have to patch more. And then done.
http://msyk.net/fmp/fx_ja/FX_patched091010.zip
If you know the difference from original source, please search my name "Masayuki"
in the file.
On UTF-16, one character has 2 bytes. The surrogate-pair character has double-
2-byte, i.e. 4 bytes. Although we submit the right UTF-8 encoded request, FMS
recognizes wrong way. If there is one surrogate-pair character in the filed
value, the last character is deleted and stored in the FileMaker's text field.
If two surrogate-pairs then last two character are deleted, and so on. WPE will
recognize one surrogate-pair character as two character at any process in spite
of convined 2 double byte code into one character.
My patch is very tricky way and it's not smart way, but it needs for current
FMS. My patch adds some characters after the field value it it has any surrogated-
pair characters. If someone wants to disable this patch, it can control by the
constant as below.
define( 'SURROGATE_INPUT_PATCH_DISABLED', true);
In a future, FMS might take care of these problem. This constant will be required
at that time.
Regards,
_______________________________________________________________
Masayuki Nii/Masayuki Nii <nii at msyk.net> <msyk at me.com>:iChat Ready
Web Site <http://msyk.net> / OME <http://mac-ome.jp>:Emailer
More information about the FX.php_List
mailing list