On Nov 22, 2007 2:27 PM, Dmitry Stogov <[EMAIL PROTECTED]> wrote: > dmitry Thu Nov 22 13:27:15 2007 UTC > > Added files: (Branch: PHP_5_3) > /ZendEngine2/tests bug43128.phpt > > Modified files: > /php-src NEWS > /TSRM tsrm_config_common.h tsrm_virtual_cwd.c > /ZendEngine2 zend.h zend_API.c zend_builtin_functions.c > zend_compile.c zend_compile.h zend_execute.c > zend_execute_API.c zend_object_handlers.c > zend_vm_execute.h zend_vm_execute.skl > /php-src/ext/interbase ibase_query.c > /php-src/ext/reflection php_reflection.c > /php-src/ext/spl php_spl.c > /php-src/main main.c > Log: > Fixed bug #43128 (Very long class name causes segfault) > > http://cvs.php.net/viewvc.cgi/ZendEngine2/zend.h?r1=1.293.2.11.2.9.2.11&r2=1.293.2.11.2.9.2.12&diff_format=u > Index: ZendEngine2/zend.h > diff -u ZendEngine2/zend.h:1.293.2.11.2.9.2.11 > ZendEngine2/zend.h:1.293.2.11.2.9.2.12 > --- ZendEngine2/zend.h:1.293.2.11.2.9.2.11 Wed Nov 21 14:55:41 2007 > +++ ZendEngine2/zend.h Thu Nov 22 13:27:11 2007 > @@ -17,7 +17,7 @@ > +----------------------------------------------------------------------+ > */ > > -/* $Id: zend.h,v 1.293.2.11.2.9.2.11 2007/11/21 14:55:41 dmitry Exp $ */ > +/* $Id: zend.h,v 1.293.2.11.2.9.2.12 2007/11/22 13:27:11 dmitry Exp $ */ > > #ifndef ZEND_H > #define ZEND_H > @@ -177,9 +177,17 @@ > #endif > > #if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2)) && !(defined(ZTS) > && defined(ZEND_WIN32)) && !(defined(ZTS) && defined(NETWARE)) && > !(defined(ZTS) && > defined(HPUX)) && !defined(DARWIN) > -# define do_alloca(p) alloca(p) > -# define free_alloca(p) > +# define ZEND_ALLOCA_MAX_SIZE (32 * 1024) > +# define ALLOCA_FLAG(name) \ > + zend_bool name; > +# define do_alloca_ex(size, limit, use_heap) \ > + ((use_heap = (UNEXPECTED((size) > (limit)))) ? emalloc(size) : > alloca(size)) > +# define do_alloca(size, use_heap) \ > + do_alloca_ex(size, ZEND_ALLOCA_MAX_SIZE, use_heap) > +# define free_alloca(p, use_heap) \ > + do { if (UNEXPECTED(use_heap)) efree(p); } while (0) > #else > +# define ALLOCA_FLAG(name) > # define do_alloca(p) emalloc(p) > # define free_alloca(p) efree(p) > #endif
Should that be #define do_alloca(p, foo) emalloc(p) #define free_alloca(p, foo) efree(p) ? -Hannes -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
