[PHP-CVS] cvs: php-src(PHP_5_2) /ext/mbstring/libmbfl/filters mbfilter_utf32.c mbfilter_utf8.c /ext/mbstring/libmbfl/mbfl mbfl_consts.h /ext/mbstring/tests illformed_utf_sequences.phpt
moriyoshi Tue Feb 24 13:22:47 2009 UTC Added files: (Branch: PHP_5_2) /php-src/ext/mbstring/tests illformed_utf_sequences.phpt Modified files: /php-src/ext/mbstring/libmbfl/filters mbfilter_utf32.c mbfilter_utf8.c /php-src/ext/mbstring/libmbfl/mbfl mbfl_consts.h Log: - MFH: strictly check UTF-8 and UTF-32 validity http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c?r1=1.1r2=1.1.8.1diff_format=u Index: php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c diff -u php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c:1.1 php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c:1.1.8.1 --- php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c:1.1 Sat Aug 23 06:18:36 2003 +++ php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c Tue Feb 24 13:22:47 2009 @@ -171,7 +171,9 @@ CK((*filter-output_function)(0xfeff, filter-data)); } else { filter-status = ~0xff; - CK((*filter-output_function)(n, filter-data)); + if (n MBFL_WCSPLANE_UTF32MAX (n 0xd800 || n 0xdfff)) { + CK((*filter-output_function)(n, filter-data)); + } } break; } @@ -201,7 +203,9 @@ } else { filter-status = 0; n = (c 0xff) | filter-cache; - CK((*filter-output_function)(n, filter-data)); + if (n MBFL_WCSPLANE_UTF32MAX (n 0xd800 || n 0xdfff)) { + CK((*filter-output_function)(n, filter-data)); + } } return c; } @@ -211,7 +215,7 @@ */ int mbfl_filt_conv_wchar_utf32be(int c, mbfl_convert_filter *filter) { - if (c = 0 c MBFL_WCSGROUP_UCS4MAX) { + if (c = 0 c MBFL_WCSPLANE_UTF32MAX) { CK((*filter-output_function)((c 24) 0xff, filter-data)); CK((*filter-output_function)((c 16) 0xff, filter-data)); CK((*filter-output_function)((c 8) 0xff, filter-data)); @@ -247,7 +251,9 @@ } else { filter-status = 0; n = ((c 0xff) 24) | filter-cache; - CK((*filter-output_function)(n, filter-data)); + if (n MBFL_WCSPLANE_UTF32MAX (n 0xd800 || n 0xdfff)) { + CK((*filter-output_function)(n, filter-data)); + } } return c; } @@ -257,7 +263,7 @@ */ int mbfl_filt_conv_wchar_utf32le(int c, mbfl_convert_filter *filter) { - if (c = 0 c MBFL_WCSGROUP_UCS4MAX) { + if (c = 0 c MBFL_WCSPLANE_UTF32MAX) { CK((*filter-output_function)(c 0xff, filter-data)); CK((*filter-output_function)((c 8) 0xff, filter-data)); CK((*filter-output_function)((c 16) 0xff, filter-data)); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c?r1=1.1r2=1.1.8.1diff_format=u Index: php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c diff -u php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c:1.1 php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c:1.1.8.1 --- php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c:1.1Sat Aug 23 06:18:36 2003 +++ php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.cTue Feb 24 13:22:47 2009 @@ -106,7 +106,8 @@ } filter-status = 0; } else if (c 0xc0) { - switch (filter-status 0xff) { + int status = filter-status 0xff; + switch (status) { case 0x10: /* 2byte code 2nd char */ case 0x21: /* 3byte code 3rd char */ case 0x32: /* 4byte code 4th char */ @@ -114,7 +115,11 @@ case 0x54: /* 6byte code 6th char */ filter-status = 0; s = filter-cache | (c 0x3f); - if (s = 0x80) { + if ((status == 0x10 s = 0x80) || + (status == 0x21 s = 0x800 (s 0xd800 || s 0xdfff)) || + (status == 0x32 s = 0x1) || + (status == 0x43 s = 0x20) || + (status == 0x54 s = 0x400 s MBFL_WCSGROUP_UCS4MAX)) { CK((*filter-output_function)(s, filter-data)); } break; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h?r1=1.3r2=1.3.4.1diff_format=u Index: php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h diff -u php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h:1.3 php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h:1.3.4.1 --- php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h:1.3 Tue Mar 22 22:22:10 2005 +++ php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h Tue Feb
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/mbstring/libmbfl/filters mbfilter_utf32.c mbfilter_utf8.c /ext/mbstring/libmbfl/mbfl mbfl_consts.h /ext/mbstring/tests illformed_utf_sequences.phpt
Moriyoshi, This hardly seems like a critical fix, can you please revert it until 5.2.9 is out. Thanks, On 24-Feb-09, at 8:22 AM, Moriyoshi Koizumi wrote: moriyoshi Tue Feb 24 13:22:47 2009 UTC Added files: (Branch: PHP_5_2) /php-src/ext/mbstring/tests illformed_utf_sequences.phpt Modified files: /php-src/ext/mbstring/libmbfl/filtersmbfilter_utf32.c mbfilter_utf8.c /php-src/ext/mbstring/libmbfl/mbfl mbfl_consts.h Log: - MFH: strictly check UTF-8 and UTF-32 validity moriyoshi-20090224132247.txt-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php Ilia Alshanetsky -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/mbstring/libmbfl/filters mbfilter_utf32.c mbfilter_utf8.c /ext/mbstring/libmbfl/mbfl mbfl_consts.h /ext/mbstring/tests illformed_utf_sequences.phpt
I thought this is a bugfix, but indeed there seem no obvious and urgent reasons to include this in 5.2.9. I'm going to revert then. Moriyoshi Ilia Alshanetsky wrote: Moriyoshi, This hardly seems like a critical fix, can you please revert it until 5.2.9 is out. Thanks, On 24-Feb-09, at 8:22 AM, Moriyoshi Koizumi wrote: moriyoshiTue Feb 24 13:22:47 2009 UTC Added files: (Branch: PHP_5_2) /php-src/ext/mbstring/testsillformed_utf_sequences.phpt Modified files: /php-src/ext/mbstring/libmbfl/filtersmbfilter_utf32.c mbfilter_utf8.c /php-src/ext/mbstring/libmbfl/mbflmbfl_consts.h Log: - MFH: strictly check UTF-8 and UTF-32 validity moriyoshi-20090224132247.txt-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php Ilia Alshanetsky -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
[PHP-CVS] cvs: php-src(PHP_5_2) /ext/mbstring/libmbfl/filters mbfilter_utf32.c mbfilter_utf8.c /ext/mbstring/libmbfl/mbfl mbfl_consts.h /ext/mbstring/tests illformed_utf_sequences.phpt
moriyoshi Tue Feb 24 15:09:43 2009 UTC Removed files: (Branch: PHP_5_2) /php-src/ext/mbstring/tests illformed_utf_sequences.phpt Modified files: /php-src/ext/mbstring/libmbfl/filters mbfilter_utf32.c mbfilter_utf8.c /php-src/ext/mbstring/libmbfl/mbfl mbfl_consts.h Log: - Revert the patch then. http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c?r1=1.1.8.1r2=1.1.8.2diff_format=u Index: php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c diff -u php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c:1.1.8.1 php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c:1.1.8.2 --- php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c:1.1.8.1 Tue Feb 24 13:22:47 2009 +++ php-src/ext/mbstring/libmbfl/filters/mbfilter_utf32.c Tue Feb 24 15:09:42 2009 @@ -171,9 +171,7 @@ CK((*filter-output_function)(0xfeff, filter-data)); } else { filter-status = ~0xff; - if (n MBFL_WCSPLANE_UTF32MAX (n 0xd800 || n 0xdfff)) { - CK((*filter-output_function)(n, filter-data)); - } + CK((*filter-output_function)(n, filter-data)); } break; } @@ -203,9 +201,7 @@ } else { filter-status = 0; n = (c 0xff) | filter-cache; - if (n MBFL_WCSPLANE_UTF32MAX (n 0xd800 || n 0xdfff)) { - CK((*filter-output_function)(n, filter-data)); - } + CK((*filter-output_function)(n, filter-data)); } return c; } @@ -215,7 +211,7 @@ */ int mbfl_filt_conv_wchar_utf32be(int c, mbfl_convert_filter *filter) { - if (c = 0 c MBFL_WCSPLANE_UTF32MAX) { + if (c = 0 c MBFL_WCSGROUP_UCS4MAX) { CK((*filter-output_function)((c 24) 0xff, filter-data)); CK((*filter-output_function)((c 16) 0xff, filter-data)); CK((*filter-output_function)((c 8) 0xff, filter-data)); @@ -251,9 +247,7 @@ } else { filter-status = 0; n = ((c 0xff) 24) | filter-cache; - if (n MBFL_WCSPLANE_UTF32MAX (n 0xd800 || n 0xdfff)) { - CK((*filter-output_function)(n, filter-data)); - } + CK((*filter-output_function)(n, filter-data)); } return c; } @@ -263,7 +257,7 @@ */ int mbfl_filt_conv_wchar_utf32le(int c, mbfl_convert_filter *filter) { - if (c = 0 c MBFL_WCSPLANE_UTF32MAX) { + if (c = 0 c MBFL_WCSGROUP_UCS4MAX) { CK((*filter-output_function)(c 0xff, filter-data)); CK((*filter-output_function)((c 8) 0xff, filter-data)); CK((*filter-output_function)((c 16) 0xff, filter-data)); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c?r1=1.1.8.1r2=1.1.8.2diff_format=u Index: php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c diff -u php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c:1.1.8.1 php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c:1.1.8.2 --- php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.c:1.1.8.1Tue Feb 24 13:22:47 2009 +++ php-src/ext/mbstring/libmbfl/filters/mbfilter_utf8.cTue Feb 24 15:09:42 2009 @@ -106,8 +106,7 @@ } filter-status = 0; } else if (c 0xc0) { - int status = filter-status 0xff; - switch (status) { + switch (filter-status 0xff) { case 0x10: /* 2byte code 2nd char */ case 0x21: /* 3byte code 3rd char */ case 0x32: /* 4byte code 4th char */ @@ -115,11 +114,7 @@ case 0x54: /* 6byte code 6th char */ filter-status = 0; s = filter-cache | (c 0x3f); - if ((status == 0x10 s = 0x80) || - (status == 0x21 s = 0x800 (s 0xd800 || s 0xdfff)) || - (status == 0x32 s = 0x1) || - (status == 0x43 s = 0x20) || - (status == 0x54 s = 0x400 s MBFL_WCSGROUP_UCS4MAX)) { + if (s = 0x80) { CK((*filter-output_function)(s, filter-data)); } break; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h?r1=1.3.4.1r2=1.3.4.2diff_format=u Index: php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h diff -u php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h:1.3.4.1 php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h:1.3.4.2 --- php-src/ext/mbstring/libmbfl/mbfl/mbfl_consts.h:1.3.4.1 Tue Feb 24 13:22:47 2009 +++
Re: [PHP-CVS] cvs: php-src(PHP_5_2) /ext/mbstring/libmbfl/filters mbfilter_utf32.c mbfilter_utf8.c /ext/mbstring/libmbfl/mbfl mbfl_consts.h /ext/mbstring/tests illformed_utf_sequences.phpt
Thanks. On 24-Feb-09, at 10:15 AM, Moriyoshi Koizumi wrote: I thought this is a bugfix, but indeed there seem no obvious and urgent reasons to include this in 5.2.9. I'm going to revert then. Moriyoshi Ilia Alshanetsky wrote: Moriyoshi, This hardly seems like a critical fix, can you please revert it until 5.2.9 is out. Thanks, On 24-Feb-09, at 8:22 AM, Moriyoshi Koizumi wrote: moriyoshiTue Feb 24 13:22:47 2009 UTC Added files: (Branch: PHP_5_2) /php-src/ext/mbstring/testsillformed_utf_sequences.phpt Modified files: /php-src/ext/mbstring/libmbfl/filtersmbfilter_utf32.c mbfilter_utf8.c /php-src/ext/mbstring/libmbfl/mbflmbfl_consts.h Log: - MFH: strictly check UTF-8 and UTF-32 validity moriyoshi-20090224132247.txt-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php Ilia Alshanetsky Ilia Alshanetsky -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php