iliaa           Mon Nov 13 22:10:40 2006 UTC

  Modified files:              (Branch: PHP_5_2)
    /php-src/ext/pgsql  pgsql.c 
    /php-src    NEWS 
  Log:
  Fixed bug #36812 (pg_execute() modifies input array).
  
  
http://cvs.php.net/viewvc.cgi/php-src/ext/pgsql/pgsql.c?r1=1.331.2.13.2.9&r2=1.331.2.13.2.10&diff_format=u
Index: php-src/ext/pgsql/pgsql.c
diff -u php-src/ext/pgsql/pgsql.c:1.331.2.13.2.9 
php-src/ext/pgsql/pgsql.c:1.331.2.13.2.10
--- php-src/ext/pgsql/pgsql.c:1.331.2.13.2.9    Fri Oct  6 21:45:10 2006
+++ php-src/ext/pgsql/pgsql.c   Mon Nov 13 22:10:36 2006
@@ -20,7 +20,7 @@
    +----------------------------------------------------------------------+
  */
  
-/* $Id: pgsql.c,v 1.331.2.13.2.9 2006/10/06 21:45:10 iliaa Exp $ */
+/* $Id: pgsql.c,v 1.331.2.13.2.10 2006/11/13 22:10:36 iliaa Exp $ */
 
 #include <stdlib.h>
 
@@ -1472,6 +1472,7 @@
                php_error_docref(NULL TSRMLS_CC, E_NOTICE, "Found results on 
this connection. Use pg_get_result() to get these results first");
        }
 
+       SEPARATE_ZVAL(pv_param_arr);
        zend_hash_internal_pointer_reset(Z_ARRVAL_PP(pv_param_arr));
        num_params = zend_hash_num_elements(Z_ARRVAL_PP(pv_param_arr));
        if (num_params > 0) {
@@ -1486,7 +1487,8 @@
                        }
 
                        otype = (*tmp)->type;
-                       convert_to_string(*tmp);
+                       SEPARATE_ZVAL(tmp);
+                       convert_to_string_ex(tmp);
                        if (Z_TYPE_PP(tmp) != IS_STRING) {
                                php_error_docref(NULL TSRMLS_CC, 
E_WARNING,"Error converting parameter");
                                _php_pgsql_free_params(params, num_params);
@@ -1495,8 +1497,7 @@
 
                        if (otype == IS_NULL) {
                                params[i] = NULL;
-                       }
-                       else {
+                       } else {
                                params[i] = Z_STRVAL_PP(tmp);
                        }
 
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.359&r2=1.2027.2.547.2.360&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.359 php-src/NEWS:1.2027.2.547.2.360
--- php-src/NEWS:1.2027.2.547.2.359     Mon Nov 13 15:33:26 2006
+++ php-src/NEWS        Mon Nov 13 22:10:37 2006
@@ -75,6 +75,7 @@
 - Fixed bug #38456 (Apache2 segfaults when virtual() is called in .php
   ErrorDocument). (Ilia)
 - Fixed bug #36975 (natcasesort() causes array_pop() to misbehave). (Hannes)
+- Fixed bug #36812 (pg_execute() modifies input array). (Ilia)
 - Fixed bug #36644 (possible crash in variant_date_from_timestamp()). (Ilia)
 - Fixed bug #33282 (Re-assignment by reference does not clear the is_ref flag)
   (Ilia,Dmitry, Matt Wilmas)

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

Reply via email to