]> granicus.if.org Git - php/commitdiff
Remove self-contradictory zend multibyte assertion
authorNikita Popov <nikic@php.net>
Thu, 11 Sep 2014 12:04:15 +0000 (14:04 +0200)
committerNikita Popov <nikic@php.net>
Thu, 11 Sep 2014 12:52:59 +0000 (14:52 +0200)
Code that explicitly exists to handle an incompatible internal
encoding should not assert that the internal encoding is compatible.

Zend/zend_language_scanner.c
Zend/zend_language_scanner.l
ext/mbstring/tests/zend_multibyte-02.phpt
ext/mbstring/tests/zend_multibyte-06.phpt

index 5bb92e5706faa02b805f5be1d0d5892699ea2dc5..e524e0b68431c6c2375431eb5f434ce4ca208adf 100644 (file)
@@ -128,7 +128,7 @@ BEGIN_EXTERN_C()
 static size_t encoding_filter_script_to_internal(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC)
 {
        const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C);
-       assert(internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding));
+       ZEND_ASSERT(internal_encoding);
        return zend_multibyte_encoding_converter(to, to_length, from, from_length, internal_encoding, LANG_SCNG(script_encoding) TSRMLS_CC);
 }
 
@@ -146,7 +146,7 @@ LANG_SCNG(script_encoding), zend_multibyte_encoding_utf8 TSRMLS_CC);
 static size_t encoding_filter_intermediate_to_internal(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC)
 {
        const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C);
-       assert(internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding));
+       ZEND_ASSERT(internal_encoding);
        return zend_multibyte_encoding_converter(to, to_length, from, from_length,
 internal_encoding, zend_multibyte_encoding_utf8 TSRMLS_CC);
 }
index dc910908236f4c9a0a2df94487a83115657845b5..146e3548527b3d72d43f59f811e711daee578b2d 100644 (file)
@@ -126,7 +126,7 @@ BEGIN_EXTERN_C()
 static size_t encoding_filter_script_to_internal(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC)
 {
        const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C);
-       assert(internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding));
+       ZEND_ASSERT(internal_encoding);
        return zend_multibyte_encoding_converter(to, to_length, from, from_length, internal_encoding, LANG_SCNG(script_encoding) TSRMLS_CC);
 }
 
@@ -144,7 +144,7 @@ LANG_SCNG(script_encoding), zend_multibyte_encoding_utf8 TSRMLS_CC);
 static size_t encoding_filter_intermediate_to_internal(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length TSRMLS_DC)
 {
        const zend_encoding *internal_encoding = zend_multibyte_get_internal_encoding(TSRMLS_C);
-       assert(internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding));
+       ZEND_ASSERT(internal_encoding);
        return zend_multibyte_encoding_converter(to, to_length, from, from_length,
 internal_encoding, zend_multibyte_encoding_utf8 TSRMLS_CC);
 }
index 8a1a57280443e1550e0e37df3e950fe8effc7942..7db444841ec37cbcd70a9e70b826d1f83d25f6dd 100644 (file)
@@ -1,6 +1,7 @@
 --TEST--
 zend multibyte (2)
 --INI--
+error_reporting=E_ALL & ~E_DEPRECATED
 zend.multibyte=On
 zend.script_encoding=UTF-8
 mbstring.internal_encoding=CP932
@@ -9,4 +10,4 @@ mbstring.internal_encoding=CP932
 var_dump(bin2hex("テスト"));
 ?>
 --EXPECTF--
-php: Zend/zend_language_scanner.l:%d: encoding_filter_script_to_internal: Assertion `internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding)' failed.
+string(12) "836583588367"
index 1b8adb51861a7121e93f3383cdba077cb344b9ad..7eeac1d3531dab35f6b9c046bb2226f0d29f506b 100644 (file)
@@ -10,4 +10,4 @@ declare(encoding="UTF-8");
 var_dump(bin2hex("テスト"));
 ?>
 --EXPECTF--
-php: Zend/zend_language_scanner.l:%d: encoding_filter_script_to_internal: Assertion `internal_encoding && zend_multibyte_check_lexer_compatibility(internal_encoding)' failed.
+string(12) "836583588367"