moriyoshi               Mon Dec  1 18:49:21 2003 EDT

  Modified files:              
    /php-src/ext/iconv  iconv.c 
  Log:
  Loosen error check. There's no reason to forbid a single '=' occurrence
  in an unencoded string.
  Fix white space handing. Meaningful spaces have got stripped wrongly
  before this patch.
  
  
Index: php-src/ext/iconv/iconv.c
diff -u php-src/ext/iconv/iconv.c:1.101 php-src/ext/iconv/iconv.c:1.102
--- php-src/ext/iconv/iconv.c:1.101     Mon Dec  1 18:25:06 2003
+++ php-src/ext/iconv/iconv.c   Mon Dec  1 18:49:20 2003
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: iconv.c,v 1.101 2003/12/01 23:25:06 moriyoshi Exp $ */
+/* $Id: iconv.c,v 1.102 2003/12/01 23:49:20 moriyoshi Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -1248,22 +1248,17 @@
 
                        case 1:
                                if (*p1 != '?') {
-                                       if ((mode & 
PHP_ICONV_MIME_DECODE_CONTINUE_ON_ERROR)) {
-                                               err = _php_iconv_appendl(pretval, 
encoded_word, (size_t)((p1 + 1) - encoded_word), cd_pl); 
-                                               if (err != PHP_ICONV_ERR_SUCCESS) {
-                                                       goto out;
-                                               }
-                                               encoded_word = NULL;
-                                               if ((mode & 
PHP_ICONV_MIME_DECODE_STRICT)) {
-                                                       scan_stat = 12;
-                                               } else {
-                                                       scan_stat = 0;
-                                               }
-                                               break;
-                                       } else {
-                                               err = PHP_ICONV_ERR_MALFORMED;
+                                       err = _php_iconv_appendl(pretval, 
encoded_word, (size_t)((p1 + 1) - encoded_word), cd_pl); 
+                                       if (err != PHP_ICONV_ERR_SUCCESS) {
                                                goto out;
                                        }
+                                       encoded_word = NULL;
+                                       if ((mode & PHP_ICONV_MIME_DECODE_STRICT)) {
+                                               scan_stat = 12;
+                                       } else {
+                                               scan_stat = 0;
+                                       }
+                                       break;
                                }
                                csname = p1 + 1;
                                scan_stat = 2;
@@ -1596,6 +1591,8 @@
                                                encoded_word = NULL;
                                                if ((mode & 
PHP_ICONV_MIME_DECODE_STRICT)) {
                                                        scan_stat = 12;
+                                               } else {
+                                                       scan_stat = 0;
                                                }
                                                break;
                                }

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to