sas Thu Oct 3 02:29:58 2002 EDT Modified files: /php4/ext/session session.c Log: Use ZEND_SET_SYMBOL_WITH_LENGTH correctly (hopefully) It strikes me as awkward that a Zend API user needs to take care of doing the engine's reference counting. This fixes a memory overrun in a testcase. All ZEND_SET_* calls should be correct now. Index: php4/ext/session/session.c diff -u php4/ext/session/session.c:1.327 php4/ext/session/session.c:1.328 --- php4/ext/session/session.c:1.327 Thu Oct 3 01:53:45 2002 +++ php4/ext/session/session.c Thu Oct 3 02:29:58 2002 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: session.c,v 1.327 2002/10/03 05:53:45 sas Exp $ */ +/* $Id: session.c,v 1.328 2002/10/03 06:29:58 sas Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -624,7 +624,7 @@ case HASH_KEY_IS_STRING: zend_hash_find(&EG(symbol_table), str, str_len, (void **) &val); if (val) { - ZEND_SET_SYMBOL_WITH_LENGTH(ht, str, str_len, *val, 1, 0); + ZEND_SET_SYMBOL_WITH_LENGTH(ht, str, str_len, *val, +(*val)->refcount + 1 , 1); } break; case HASH_KEY_IS_LONG:
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php