Justtechjobs.com Find a programming school near you






Online Campus Both


php4-beta | 199912

Re: [PHP4BETA] TSRM problems... UMBRs everywhere:-(( From: Thies C. Arntzen (thies <email protected>)
Date: 12/23/99

On Thu, 23 Dec 1999 zeev <email protected> wrote:

> On Thu, 23 Dec 1999, Thies C. Arntzen wrote:
>
> > hi,
> >
> > just did some purifying of the aolserver-module - but my point should also
> > apply to the Win32 ISAPI stuff.
> >
> > a lot of _ctor function do *NOT* initialize all TS-Globals correct. just
> > compare struct _zend_compiler_globals (Zend/zend_globals.h) and see which
> > of those values get initialized in compiler_globals_ctor().
> >
> > i've enclosed a patch that clear's all TLS memory before calling the
> > ctor.
>
> I'm not following - TSRM isn't supposed to initialize the memory it
> initializes. If you need any initialization, it's done in the
> constructor, and if it isn't, it's a constructor bug.
>
> Are you referring to something else?

no -
than i found a bug (maybe even a few)...

compiler_globals_ctor only initializes:

compiler_globals->function_table
compiler_globals->class_table

purify says that eg: CG(extended_info) is uninted when calling
phpinfo() in ZTS mode.

these kind of UMBRs are extremely hard to find! - in non-ZTS mode all the
globals are usually zeroed when the executable loads.

i promise you that you will notice an improvement of stability when using
my patch on Win32 - even though i think we *SHOULD* not use (my patch) but
instead fix all the _ctor() functions.

tc

>
>
> --
> PHP 4.0 Beta Mailing List <http://www.php.net/version4/>
> To unsubscribe, e-mail: php4beta-unsubscribe <email protected>
> For additional commands, e-mail: php4beta-help <email protected>
> To contact the list administrators, e-mail: php4beta-admin <email protected>
>
>

Thies C. Arntzen "One Big-Mac, Small Fries and a Coke!"
Digital Collections Phone +49 40 235350 Fax +49 40 23535180
Hammerbrookstr. 93 20097 Hamburg / Germany

-- 
PHP 4.0 Beta Mailing List <http://www.php.net/version4/>
To unsubscribe, e-mail: php4beta-unsubscribe <email protected>
For additional commands, e-mail: php4beta-help <email protected>
To contact the list administrators, e-mail: php4beta-admin <email protected>