tony2001                Thu Jan 11 22:23:06 2007 UTC

  Modified files:              
    /php-src/ext/mbstring       php_mbregex.c 
  Log:
  avoid changing original zval
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/php_mbregex.c?r1=1.57&r2=1.58&diff_format=u
Index: php-src/ext/mbstring/php_mbregex.c
diff -u php-src/ext/mbstring/php_mbregex.c:1.57 
php-src/ext/mbstring/php_mbregex.c:1.58
--- php-src/ext/mbstring/php_mbregex.c:1.57     Mon Jan  1 09:29:25 2007
+++ php-src/ext/mbstring/php_mbregex.c  Thu Jan 11 22:23:06 2007
@@ -16,7 +16,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: php_mbregex.c,v 1.57 2007/01/01 09:29:25 sebastian Exp $ */
+/* $Id: php_mbregex.c,v 1.58 2007/01/11 22:23:06 tony2001 Exp $ */
 
 
 #ifdef HAVE_CONFIG_H
@@ -607,7 +607,7 @@
 /* {{{ _php_mb_regex_ereg_replace_exec */
 static void _php_mb_regex_ereg_replace_exec(INTERNAL_FUNCTION_PARAMETERS, 
OnigOptionType options)
 {
-       zval *arg_pattern_zval;
+       zval **arg_pattern_zval;
 
        char *arg_pattern;
        int arg_pattern_len;
@@ -647,7 +647,7 @@
                char *option_str = NULL;
                int option_str_len = 0;
 
-               if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zss|s",
+               if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "Zss|s",
                                                                        
&arg_pattern_zval,
                                                                        
&replace, &replace_len,
                                                                        
&string, &string_len,
@@ -662,13 +662,13 @@
                        syntax = MBSTRG(regex_default_syntax);
                }
        }
-       if (Z_TYPE_P(arg_pattern_zval) == IS_STRING) {
-               arg_pattern = Z_STRVAL_P(arg_pattern_zval);
-               arg_pattern_len = Z_STRLEN_P(arg_pattern_zval);
+       if (Z_TYPE_PP(arg_pattern_zval) == IS_STRING) {
+               arg_pattern = Z_STRVAL_PP(arg_pattern_zval);
+               arg_pattern_len = Z_STRLEN_PP(arg_pattern_zval);
        } else {
                /* FIXME: this code is not multibyte aware! */
-               convert_to_long_ex(&arg_pattern_zval);
-               pat_buf[0] = (char)Z_LVAL_P(arg_pattern_zval);  
+               convert_to_long_ex(arg_pattern_zval);
+               pat_buf[0] = (char)Z_LVAL_PP(arg_pattern_zval); 
                pat_buf[1] = '\0';
 
                arg_pattern = pat_buf;

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

Reply via email to