[prev in list] [next in list] [prev in thread] [next in thread] 

List:       php-cvs
Subject:    [PHP-CVS] cvs: php-src /ext/session session.c
From:       "Moriyoshi Koizumi" <moriyoshi () php ! net>
Date:       2004-02-29 0:26:37
Message-ID: cvsmoriyoshi1078014397 () cvsserver
[Download RAW message or body]

moriyoshi		Sat Feb 28 19:26:37 2004 EDT

  Modified files:              
    /php-src/ext/session	session.c 
  Log:
  - Fix segfaults on deserialisation of referenced variables.
  # ALLOC_INIT_ZVAL() initialises the type field to IS_NULL, while
  # MAKE_STD_ZVAL() doesn't. This caused a kind of random crash
  # when zval_ptr_dtor() was applied on an intact zval created by
  # the latter method.
  #
  # Please check relevant bugs again. There should be some that
  # have already been marked as bogus.
  
  
http://cvs.php.net/diff.php/php-src/ext/session/session.c?r1=1.385&r2=1.386&ty=u
Index: php-src/ext/session/session.c
diff -u php-src/ext/session/session.c:1.385 php-src/ext/session/session.c:1.386
--- php-src/ext/session/session.c:1.385	Tue Feb 24 03:47:35 2004
+++ php-src/ext/session/session.c	Sat Feb 28 19:26:36 2004
@@ -17,7 +17,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: session.c,v 1.385 2004/02/24 08:47:35 sniper Exp $ */
+/* $Id: session.c,v 1.386 2004/02/29 00:26:36 moriyoshi Exp $ */
 
 #ifdef HAVE_CONFIG_H
 #include "config.h"
@@ -498,7 +498,7 @@
 		q++;
 		
 		if (has_value) {
-			MAKE_STD_ZVAL(current);
+			ALLOC_INIT_ZVAL(current);
 			if (php_var_unserialize(&current, &q, endptr, &var_hash TSRMLS_CC)) {
 				php_set_session_var(name, namelen, current, &var_hash TSRMLS_CC);
 			}

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

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic