On Tue, Sep 2, 2008 at 11:30 PM, Arnaud Le Blanc <[EMAIL PROTECTED]>wrote:

> Hi,
>
> On Tuesday 02 September 2008 12:15:02 Dmitry Stogov wrote:
> >
> > Jani Taskinen wrote:
> > >>> Dmitry Stogov wrote:
> > >>>> Hi,
> > >>>>
> > >>>> Attached is a proposed fix for http://bugs.php.net/bug.php?id=45392for
> > >>>> PHP_5_3. I don't know output buffering part very well, and I'm not
> > >>>> completely sure about this fix, so please review it.
> > >>>>
> > >>>> The patch changes behavior of output buffering a bit. In case of
> fatal
> > >>>> error all output buffers opened by ob_start() with zero (or omitted)
> > >>>> chunk_size argument are discarded. The fix brakes two tests:
> > >>>>
> > >>>> Test session_module_name() function : variation
> > >>>> [ext/session/tests/session_module_name_variation3.phpt]
> > >>>> Test session_set_save_handler() function : error functionality
> > >>>> [ext/session/tests/session_set_save_handler_error3.phpt]
> > >>>>
> > >>>> We need to make a decision about #45392.
> > >>>>
> > >>>> 1) Fix it with proposed (or similar) patch
> > >>>>
> > >>>> 2) Make it bogus because any fix requires output buffering behavior
> > >>>> change
> > >
> > > Sorry for top-posting. Anyway, reading the patch made me think that
> > > maybe in the user/recoverable cases the output buffer should not be
> > > discarded like this..?
> > >
> > > And IMO, it's a bug, bugs should be fixed even if it means changing the
> > > behaviour in an _edge_ case.
> >
> > I'm not so sure as http://www.php.net/manual/en/function.ob-start.php
> > doesn't make difference between successful and unsuccessful request and
> > assumes "output buffer is flushed to the browser at the end of the
> request".
>
> I think that it is critical to output this kind of buffer in case of fatal
> error, as it may unexpectedly leak data which was not meant to be output.
> It
> seems Ok to me to discard this kind of buffers in this case.
>
> >
> > > How do those session tests fail..?
> >
> > As they have ob_start() at top, the output is discarded and only error
> > message is printed.
> >
> > > They expect output with fatal errors? (actually those tests failed
> > > without your patch too, IIRC :)
> >
> > They works for me without the patch.
> >
> > Thanks. Dmitry.
> >
> > > --Jani
> > >
> >
>
> Regards,
>
> Arnaud
>
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
>
> Hi all,
[Warning] I don't know the insides of php and then it can be a stupid
question

eval use ob_start? I say that because, in eval if u have a Parse Error
inside it will output it without really stop the script... eval doesn't
change its behavior with this patch?

If it makes no sense to you guys, simply ignore ;)

-- 
Thanks for your attention,

Diogo Neves
Web Developer @ SAPO.pt by PrimeIT.pt

Reply via email to