summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRui Hirokawa <hirokawa@php.net>2005-12-24 04:32:42 +0000
committerRui Hirokawa <hirokawa@php.net>2005-12-24 04:32:42 +0000
commit11105b1eed25ecf9e2c5260a631cfc7a962ce773 (patch)
tree73eee1e8169dbcd86b158a983c979fe83691f303
parentcaac5ef86d54324fa145b3f5ef0f0cfc4297ee6c (diff)
downloadphp-git-11105b1eed25ecf9e2c5260a631cfc7a962ce773.tar.gz
MFH: fixed #35711 ISO-8859 charset not correctly detected.
-rw-r--r--ext/mbstring/libmbfl/mbfl/mbfilter.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/ext/mbstring/libmbfl/mbfl/mbfilter.c b/ext/mbstring/libmbfl/mbfl/mbfilter.c
index 0e7072fda7..e543951d33 100644
--- a/ext/mbstring/libmbfl/mbfl/mbfilter.c
+++ b/ext/mbstring/libmbfl/mbfl/mbfilter.c
@@ -576,11 +576,25 @@ mbfl_identify_encoding(mbfl_string *string, enum mbfl_no_encoding *elist, int el
for (i = 0; i < num; i++) {
filter = &flist[i];
if (!filter->flag) {
+ if (strict && filter->status) {
+ continue;
+ }
encoding = filter->encoding;
break;
}
}
+ /* fall-back judge */
+ if (!encoding) {
+ for (i = 0; i < num; i++) {
+ filter = &flist[i];
+ if (!filter->flag) {
+ encoding = filter->encoding;
+ break;
+ }
+ }
+ }
+
/* cleanup */
/* dtors should be called in reverse order */
i = num; while (--i >= 0) {