diff options
author | Alex Dupre <ale@FreeBSD.org> | 2011-08-19 09:33:31 +0000 |
---|---|---|
committer | Alex Dupre <ale@FreeBSD.org> | 2011-08-19 09:33:31 +0000 |
commit | cda471cf02917bbe0f37f5e0ac7b4b1771b9db8b (patch) | |
tree | 4e8834ea0d1c7835e3c42fe420cecb457c7611a5 /lang/php5/files | |
parent | c48bda023a11520af2e662b3ae15e7e6aaa12f97 (diff) |
Update to 5.3.7 release.
Notes
Notes:
svn path=/head/; revision=280005
Diffstat (limited to 'lang/php5/files')
-rw-r--r-- | lang/php5/files/patch-ext_standard_string.c | 159 | ||||
-rw-r--r-- | lang/php5/files/patch-main_rfc1867.c | 20 |
2 files changed, 0 insertions, 179 deletions
diff --git a/lang/php5/files/patch-ext_standard_string.c b/lang/php5/files/patch-ext_standard_string.c deleted file mode 100644 index 361cc6f16473..000000000000 --- a/lang/php5/files/patch-ext_standard_string.c +++ /dev/null @@ -1,159 +0,0 @@ ---- ext/standard/string.c.orig 2011/04/13 03:32:19 -+++ ext/standard/string.c 2011/04/13 06:32:41 -@@ -2352,20 +2352,35 @@ - - zend_hash_internal_pointer_reset_ex(Z_ARRVAL_PP(str), &pos_str); - while (zend_hash_get_current_data_ex(Z_ARRVAL_PP(str), (void **) &tmp_str, &pos_str) == SUCCESS) { -- convert_to_string_ex(tmp_str); -+ zval *orig_str; -+ zval dummy; -+ if(Z_TYPE_PP(tmp_str) != IS_STRING) { -+ dummy = **tmp_str; -+ orig_str = &dummy; -+ zval_copy_ctor(orig_str); -+ convert_to_string(orig_str); -+ } else { -+ orig_str = *tmp_str; -+ } - - if (Z_TYPE_PP(from) == IS_ARRAY) { - if (SUCCESS == zend_hash_get_current_data_ex(Z_ARRVAL_PP(from), (void **) &tmp_from, &pos_from)) { -- convert_to_long_ex(tmp_from); -+ if(Z_TYPE_PP(tmp_from) != IS_LONG) { -+ zval dummy = **tmp_from; -+ zval_copy_ctor(&dummy); -+ convert_to_long(&dummy); -+ f = Z_LVAL(dummy); -+ } else { -+ f = Z_LVAL_PP(tmp_from); -+ } - -- f = Z_LVAL_PP(tmp_from); - if (f < 0) { -- f = Z_STRLEN_PP(tmp_str) + f; -+ f = Z_STRLEN_P(orig_str) + f; - if (f < 0) { - f = 0; - } -- } else if (f > Z_STRLEN_PP(tmp_str)) { -- f = Z_STRLEN_PP(tmp_str); -+ } else if (f > Z_STRLEN_P(orig_str)) { -+ f = Z_STRLEN_P(orig_str); - } - zend_hash_move_forward_ex(Z_ARRVAL_PP(from), &pos_from); - } else { -@@ -2374,72 +2389,94 @@ - } else { - f = Z_LVAL_PP(from); - if (f < 0) { -- f = Z_STRLEN_PP(tmp_str) + f; -+ f = Z_STRLEN_P(orig_str) + f; - if (f < 0) { - f = 0; - } -- } else if (f > Z_STRLEN_PP(tmp_str)) { -- f = Z_STRLEN_PP(tmp_str); -+ } else if (f > Z_STRLEN_P(orig_str)) { -+ f = Z_STRLEN_P(orig_str); - } - } - - if (argc > 3 && Z_TYPE_PP(len) == IS_ARRAY) { - if (SUCCESS == zend_hash_get_current_data_ex(Z_ARRVAL_PP(len), (void **) &tmp_len, &pos_len)) { -- convert_to_long_ex(tmp_len); -+ if(Z_TYPE_PP(tmp_len) != IS_LONG) { -+ zval dummy = **tmp_len; -+ zval_copy_ctor(&dummy); -+ convert_to_long(&dummy); -+ l = Z_LVAL(dummy); -+ } else { -+ l = Z_LVAL_PP(tmp_len); -+ } - - l = Z_LVAL_PP(tmp_len); - zend_hash_move_forward_ex(Z_ARRVAL_PP(len), &pos_len); - } else { -- l = Z_STRLEN_PP(tmp_str); -+ l = Z_STRLEN_P(orig_str); - } - } else if (argc > 3) { - l = Z_LVAL_PP(len); - } else { -- l = Z_STRLEN_PP(tmp_str); -+ l = Z_STRLEN_P(orig_str); - } - - if (l < 0) { -- l = (Z_STRLEN_PP(tmp_str) - f) + l; -+ l = (Z_STRLEN_P(orig_str) - f) + l; - if (l < 0) { - l = 0; - } - } - -- if ((f + l) > Z_STRLEN_PP(tmp_str)) { -- l = Z_STRLEN_PP(tmp_str) - f; -+ if ((f + l) > Z_STRLEN_P(orig_str)) { -+ l = Z_STRLEN_P(orig_str) - f; - } - -- result_len = Z_STRLEN_PP(tmp_str) - l; -+ result_len = Z_STRLEN_P(orig_str) - l; - - if (Z_TYPE_PP(repl) == IS_ARRAY) { - if (SUCCESS == zend_hash_get_current_data_ex(Z_ARRVAL_PP(repl), (void **) &tmp_repl, &pos_repl)) { -- convert_to_string_ex(tmp_repl); -- result_len += Z_STRLEN_PP(tmp_repl); -+ zval *repl_str; -+ zval zrepl; -+ if(Z_TYPE_PP(tmp_repl) != IS_STRING) { -+ zrepl = **tmp_repl; -+ repl_str = &zrepl; -+ zval_copy_ctor(repl_str); -+ convert_to_string(repl_str); -+ } else { -+ repl_str = *tmp_repl; -+ } -+ -+ result_len += Z_STRLEN_P(repl_str); - zend_hash_move_forward_ex(Z_ARRVAL_PP(repl), &pos_repl); - result = emalloc(result_len + 1); - -- memcpy(result, Z_STRVAL_PP(tmp_str), f); -- memcpy((result + f), Z_STRVAL_PP(tmp_repl), Z_STRLEN_PP(tmp_repl)); -- memcpy((result + f + Z_STRLEN_PP(tmp_repl)), Z_STRVAL_PP(tmp_str) + f + l, Z_STRLEN_PP(tmp_str) - f - l); -+ memcpy(result, Z_STRVAL_P(orig_str), f); -+ memcpy((result + f), Z_STRVAL_P(repl_str), Z_STRLEN_P(repl_str)); -+ memcpy((result + f + Z_STRLEN_P(repl_str)), Z_STRVAL_P(orig_str) + f + l, Z_STRLEN_P(orig_str) - f - l); -+ if(Z_TYPE_PP(tmp_repl) != IS_STRING) { -+ zval_dtor(repl_str); -+ } - } else { - result = emalloc(result_len + 1); - -- memcpy(result, Z_STRVAL_PP(tmp_str), f); -- memcpy((result + f), Z_STRVAL_PP(tmp_str) + f + l, Z_STRLEN_PP(tmp_str) - f - l); -+ memcpy(result, Z_STRVAL_P(orig_str), f); -+ memcpy((result + f), Z_STRVAL_P(orig_str) + f + l, Z_STRLEN_P(orig_str) - f - l); - } - } else { - result_len += Z_STRLEN_PP(repl); - - result = emalloc(result_len + 1); - -- memcpy(result, Z_STRVAL_PP(tmp_str), f); -+ memcpy(result, Z_STRVAL_P(orig_str), f); - memcpy((result + f), Z_STRVAL_PP(repl), Z_STRLEN_PP(repl)); -- memcpy((result + f + Z_STRLEN_PP(repl)), Z_STRVAL_PP(tmp_str) + f + l, Z_STRLEN_PP(tmp_str) - f - l); -+ memcpy((result + f + Z_STRLEN_PP(repl)), Z_STRVAL_P(orig_str) + f + l, Z_STRLEN_P(orig_str) - f - l); - } - - result[result_len] = '\0'; - add_next_index_stringl(return_value, result, result_len, 0); -- -+ if(Z_TYPE_PP(tmp_str) != IS_STRING) { -+ zval_dtor(orig_str); -+ } - zend_hash_move_forward_ex(Z_ARRVAL_PP(str), &pos_str); - } /*while*/ - } /* if */ diff --git a/lang/php5/files/patch-main_rfc1867.c b/lang/php5/files/patch-main_rfc1867.c deleted file mode 100644 index 118008e25c88..000000000000 --- a/lang/php5/files/patch-main_rfc1867.c +++ /dev/null @@ -1,20 +0,0 @@ ---- main/rfc1867.c.orig 2011/06/12 15:03:18 -+++ main/rfc1867.c 2011/06/12 15:14:18 -@@ -1223,7 +1223,7 @@ - #endif - - if (!is_anonymous) { -- if (s && s > filename) { -+ if (s && s >= filename) { - safe_php_register_variable(lbuf, s+1, strlen(s+1), NULL, 0 TSRMLS_CC); - } else { - safe_php_register_variable(lbuf, filename, strlen(filename), NULL, 0 TSRMLS_CC); -@@ -1236,7 +1236,7 @@ - } else { - snprintf(lbuf, llen, "%s[name]", param); - } -- if (s && s > filename) { -+ if (s && s >= filename) { - register_http_post_files_variable(lbuf, s+1, http_post_files, 0 TSRMLS_CC); - } else { - register_http_post_files_variable(lbuf, filename, http_post_files, 0 TSRMLS_CC); |