dmitry          Wed May 24 07:55:19 2006 UTC

  Modified files:              (Branch: PHP_5_2)
    /php-src    NEWS 
    /php-src/sapi/cgi   cgi_main.c 
  Log:
  Fixed bug #37341 ($_SERVER in included file is shortened to two entries, if 
$_ENV gets used).
  
  
http://cvs.php.net/viewcvs.cgi/php-src/NEWS?r1=1.2027.2.547.2.41&r2=1.2027.2.547.2.42&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.41 php-src/NEWS:1.2027.2.547.2.42
--- php-src/NEWS:1.2027.2.547.2.41      Tue May 23 23:22:04 2006
+++ php-src/NEWS        Wed May 24 07:55:18 2006
@@ -67,6 +67,8 @@
 - Fixed bug #37376 (fastcgi.c compile fail with gcc 2.95.4). (Ilia)
 - Fixed bug #37368 (Incorrect timestamp returned for strtotime()). (Derick)
 - Fixed bug #37348 (make PEAR install ignore open_basedir). (Ilia)
+- Fixed bug #37341 ($_SERVER in included file is shortened to two entries,
+  if $_ENV gets used). (Dmitry)
 - Fixed bug #37313 (sigemptyset() used without including <signal.h>).
   (jdolecek)
 - Fixed bug #37306 (max_execution_time = max_input_time). (Dmitry)
http://cvs.php.net/viewcvs.cgi/php-src/sapi/cgi/cgi_main.c?r1=1.267.2.15.2.1&r2=1.267.2.15.2.2&diff_format=u
Index: php-src/sapi/cgi/cgi_main.c
diff -u php-src/sapi/cgi/cgi_main.c:1.267.2.15.2.1 
php-src/sapi/cgi/cgi_main.c:1.267.2.15.2.2
--- php-src/sapi/cgi/cgi_main.c:1.267.2.15.2.1  Mon May 15 14:30:31 2006
+++ php-src/sapi/cgi/cgi_main.c Wed May 24 07:55:19 2006
@@ -21,7 +21,7 @@
    +----------------------------------------------------------------------+
 */
 
-/* $Id: cgi_main.c,v 1.267.2.15.2.1 2006/05/15 14:30:31 dmitry Exp $ */
+/* $Id: cgi_main.c,v 1.267.2.15.2.2 2006/05/24 07:55:19 dmitry Exp $ */
 
 #include "php.h"
 #include "php_globals.h"
@@ -434,14 +434,18 @@
 void cgi_php_import_environment_variables(zval *array_ptr TSRMLS_DC)
 {
        if (PG(http_globals)[TRACK_VARS_ENV] &&
-           array_ptr != PG(http_globals)[TRACK_VARS_ENV]) {
+           array_ptr != PG(http_globals)[TRACK_VARS_ENV] &&
+           Z_TYPE_P(PG(http_globals)[TRACK_VARS_ENV]) == IS_ARRAY &&
+           
zend_hash_num_elements(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_ENV])) > 0) {
            zval_dtor(array_ptr);
            *array_ptr = *PG(http_globals)[TRACK_VARS_ENV];
            INIT_PZVAL(array_ptr);
            zval_copy_ctor(array_ptr);
            return;
        } else if (PG(http_globals)[TRACK_VARS_SERVER] &&
-               array_ptr != PG(http_globals)[TRACK_VARS_SERVER]) {
+               array_ptr != PG(http_globals)[TRACK_VARS_SERVER] &&
+           Z_TYPE_P(PG(http_globals)[TRACK_VARS_SERVER]) == IS_ARRAY &&
+           
zend_hash_num_elements(Z_ARRVAL_P(PG(http_globals)[TRACK_VARS_SERVER])) > 0) {
            zval_dtor(array_ptr);
            *array_ptr = *PG(http_globals)[TRACK_VARS_SERVER];
            INIT_PZVAL(array_ptr);

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

Reply via email to