packages: php/php-bug-48697.patch (NEW) - revert http://www.mail-archive.co...
glen
glen at pld-linux.org
Thu Jun 25 20:13:21 CEST 2009
Author: glen Date: Thu Jun 25 18:13:21 2009 GMT
Module: packages Tag: HEAD
---- Log message:
- revert http://www.mail-archive.com/php-cvs%40lists.php.net/msg40593.html
makes mb_internal_encoding to loose it's value at some point.
http://bugs.php.net/bug.php?id=48697
---- Files affected:
packages/php:
php-bug-48697.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/php/php-bug-48697.patch
diff -u /dev/null packages/php/php-bug-48697.patch:1.1
--- /dev/null Thu Jun 25 20:13:21 2009
+++ packages/php/php-bug-48697.patch Thu Jun 25 20:13:16 2009
@@ -0,0 +1,71 @@
+--- /repository/php-src/ext/mbstring/mb_gpc.c 2008/12/31 11:17:39 1.17.2.2.2.5
++++ /repository/php-src/ext/mbstring/mb_gpc.c 2009/03/15 20:44:17 1.17.2.2.2.6
+@@ -58,6 +58,11 @@
+ int free_buffer=0;
+ enum mbfl_no_encoding detected;
+ php_mb_encoding_handler_info_t info;
++
++ {
++ char *value = zend_ini_string("mbstring.internal_encoding", sizeof("mbstring.internal_encoding"), 0);
++ _php_mb_ini_mbstring_internal_encoding_set(value, value ? strlen(value): 0 TSRMLS_CC);
++ }
+
+ if (!MBSTRG(encoding_translation)) {
+ php_default_treat_data(arg, str, destArray TSRMLS_CC);
+--- /repository/php-src/ext/mbstring/mbstring.c 2009/02/15 07:11:23 1.224.2.22.2.46
++++ /repository/php-src/ext/mbstring/mbstring.c 2009/03/15 20:44:17 1.224.2.22.2.47
+@@ -656,7 +656,7 @@
+ /* }}} */
+
+ /* {{{ static _php_mb_ini_mbstring_internal_encoding_set */
+-static int _php_mb_ini_mbstring_internal_encoding_set(const char *new_value, uint new_value_length TSRMLS_DC)
++int _php_mb_ini_mbstring_internal_encoding_set(const char *new_value, uint new_value_length TSRMLS_DC)
+ {
+ enum mbfl_no_encoding no_encoding;
+ const char *enc_name = NULL;
+@@ -826,7 +826,6 @@
+ if (MBSTRG(encoding_translation)) {
+ sapi_unregister_post_entry(php_post_entries TSRMLS_CC);
+ sapi_register_post_entries(mbstr_post_entries TSRMLS_CC);
+- sapi_register_treat_data(mbstr_treat_data);
+ } else {
+ sapi_unregister_post_entry(mbstr_post_entries TSRMLS_CC);
+ sapi_register_post_entries(php_post_entries TSRMLS_CC);
+@@ -927,9 +926,12 @@
+
+ REGISTER_INI_ENTRIES();
+
++ /* This is a global handler. Should not be set in a per-request handler. */
++ sapi_register_treat_data(mbstr_treat_data);
++
++ /* Post handlers are stored in the thread-local context. */
+ if (MBSTRG(encoding_translation)) {
+ sapi_register_post_entries(mbstr_post_entries TSRMLS_CC);
+- sapi_register_treat_data(mbstr_treat_data);
+ }
+
+ REGISTER_LONG_CONSTANT("MB_OVERLOAD_MAIL", MB_OVERLOAD_MAIL, CONST_CS | CONST_PERSISTENT);
+@@ -967,11 +969,6 @@
+ enum mbfl_no_encoding *list=NULL, *entry;
+ zend_function *func, *orig;
+ const struct mb_overload_def *p;
+-
+- {
+- char *value = zend_ini_string("mbstring.internal_encoding", sizeof("mbstring.internal_encoding"), 0);
+- _php_mb_ini_mbstring_internal_encoding_set(value, value ? strlen(value): 0 TSRMLS_CC);
+- }
+
+ MBSTRG(current_internal_encoding) = MBSTRG(internal_encoding);
+ MBSTRG(current_http_output_encoding) = MBSTRG(http_output_encoding);
+--- /repository/php-src/ext/mbstring/mbstring.h 2008/12/31 11:17:39 1.66.2.4.2.9
++++ /repository/php-src/ext/mbstring/mbstring.h 2009/03/15 20:44:17 1.66.2.4.2.10
+@@ -158,6 +158,9 @@
+ MBSTRING_API int php_mb_gpc_encoding_detector(char **arg_string, int *arg_length, int num, char *arg_list TSRMLS_DC);
+
+ MBSTRING_API int php_mb_stripos(int mode, char *old_haystack, int old_haystack_len, char *old_needle, int old_needle_len, long offset, char *from_encoding TSRMLS_DC);
++
++/* internal use only */
++int _php_mb_ini_mbstring_internal_encoding_set(const char *new_value, uint new_value_length TSRMLS_DC);
+
+ ZEND_BEGIN_MODULE_GLOBALS(mbstring)
+ enum mbfl_no_language language;
================================================================
More information about the pld-cvs-commit
mailing list