cvs: php-src(PHP_5_0) /ext/mbstring/libmbfl/mbfl mbfilter.c
| From: | Masaki Fujimoto | Date: | Fri, 22 Apr 2005 05:03:25 +0000 |
| Subject: | cvs: php-src(PHP_5_0) /ext/mbstring/libmbfl/mbfl mbfilter.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-31539@lists.php.net to get a copy of this message | ||
fujimoto Fri Apr 22 01:03:25 2005 EDT
Modified files: (Branch: PHP_5_0)
/php-src/ext/mbstring/libmbfl/mbfl mbfilter.c
Log:
- MFH: Fix mbfl_encoding_detector_feed() and mbfl_mbfl_identify_encoding() behaviour
http://cvs.php.net/diff.php/php-src/ext/mbstring/libmbfl/mbfl/mbfilter.c?r1=1.2.2.6&r2=1.2.2.7&ty=u
Index: php-src/ext/mbstring/libmbfl/mbfl/mbfilter.c
diff -u php-src/ext/mbstring/libmbfl/mbfl/mbfilter.c:1.2.2.6
php-src/ext/mbstring/libmbfl/mbfl/mbfilter.c:1.2.2.7
--- php-src/ext/mbstring/libmbfl/mbfl/mbfilter.c:1.2.2.6 Wed Apr 13 06:10:54 2005
+++ php-src/ext/mbstring/libmbfl/mbfl/mbfilter.c Fri Apr 22 01:03:25 2005
@@ -405,16 +405,16 @@
num = identd->filter_list_size;
n = string->len;
p = string->val;
+ bad = 0;
while (n > 0) {
- i = 0;
- bad = 0;
- while (i < num) {
+ for (i = 0; i < num; i++) {
filter = identd->filter_list[i];
- (*filter->filter_function)(*p, filter);
- if (filter->flag) {
- bad++;
+ if (!filter->flag) {
+ (*filter->filter_function)(*p, filter);
+ if (filter->flag) {
+ bad++;
+ }
}
- i++;
}
if ((num - 1) <= bad) {
res = 1;
@@ -555,9 +555,11 @@
while (n > 0) {
for (i = 0; i < num; i++) {
filter = &flist[i];
- (*filter->filter_function)(*p, filter);
- if (filter->flag) {
- bad++;
+ if (!filter->flag) {
+ (*filter->filter_function)(*p, filter);
+ if (filter->flag) {
+ bad++;
+ }
}
}
if ((num - 1) <= bad && !strict) {
@@ -571,7 +573,7 @@
/* judge */
encoding = NULL;
- for (i = num; --i >= 0;) {
+ for (i = 0; i < num; i++) {
filter = &flist[i];
if (!filter->flag) {
encoding = filter->encoding;