[PHP-DEV] Bug #12227 Updated: Output puffering causes Apache to SIGSEGV

2002-01-02 Thread lobbin

ID: 12227
Updated by: lobbin
Reported By: [EMAIL PROTECTED]
Old Status: Feedback
Status: Closed
Bug Type: Output Control
Operating System: Linux 2.2.16-SMP
PHP Version: 4.0.6
New Comment:

No feedback. Closing.

Previous Comments:


[2001-12-12 04:31:14] [EMAIL PROTECTED]

I guess you have ob_end_clean() or ob_end_flush() in your auto prepend file. Do you?
Anyway, does this happen with 4.1.0?



[2001-07-18 06:13:58] [EMAIL PROTECTED]

One more comment which I forgot before:

This does NOT happen when I do not use auto_prepend_file and call my function inside 
the main script instead.




[2001-07-18 06:07:05] [EMAIL PROTECTED]

When using ob_start() with a script included via auto_prepend_file and then doing 
something like this:

ob_start(my_flush);

function my_flush($buffer)
  {
$buffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);

return $buffer;
  }

PHP 4.0.6 SIGSEGV's with this message in the error_log:

[Wed Jul 18 11:55:08 2001]  Script:  '/home/htdocs/test.php'
---
output.c(235) : Block 0x0824C940 status:
Beginning:  Overrun (magic=0x08294990, expected=0x7312F8DC)
  End:  Unknown
---
./zend_execute.c(334) :  Freeing 0x082A8CB4 (28131 bytes), 
script=/home/htdocs/test.php
zend_variables.c(117) : Actual location (location was relayed)
[Wed Jul 18 11:55:08 2001] [notice] child pid 30192 exit signal Segmentation fault 
(11)

If I replace the line
$buffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);
with
$newbuffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);

it works fine.

Any ideas for a fix?

Harry






Edit this bug report at http://bugs.php.net/?id=12227edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12227 Updated: Output puffering causes Apache to SIGSEGV

2001-12-12 Thread yohgaki

ID: 12227
Updated by: yohgaki
Reported By: [EMAIL PROTECTED]
Old Status: Open
Status: Feedback
Bug Type: Output Control
Operating System: Linux 2.2.16-SMP
PHP Version: 4.0.6
New Comment:

I guess you have ob_end_clean() or ob_end_flush() in your auto prepend file. Do you?
Anyway, does this happen with 4.1.0?

Previous Comments:


[2001-07-18 06:13:58] [EMAIL PROTECTED]

One more comment which I forgot before:

This does NOT happen when I do not use auto_prepend_file and call my function inside 
the main script instead.




[2001-07-18 06:07:05] [EMAIL PROTECTED]

When using ob_start() with a script included via auto_prepend_file and then doing 
something like this:

ob_start(my_flush);

function my_flush($buffer)
  {
$buffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);

return $buffer;
  }

PHP 4.0.6 SIGSEGV's with this message in the error_log:

[Wed Jul 18 11:55:08 2001]  Script:  '/home/htdocs/test.php'
---
output.c(235) : Block 0x0824C940 status:
Beginning:  Overrun (magic=0x08294990, expected=0x7312F8DC)
  End:  Unknown
---
./zend_execute.c(334) :  Freeing 0x082A8CB4 (28131 bytes), 
script=/home/htdocs/test.php
zend_variables.c(117) : Actual location (location was relayed)
[Wed Jul 18 11:55:08 2001] [notice] child pid 30192 exit signal Segmentation fault 
(11)

If I replace the line
$buffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);
with
$newbuffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);

it works fine.

Any ideas for a fix?

Harry






Edit this bug report at http://bugs.php.net/?id=12227edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




[PHP-DEV] Bug #12227 Updated: Output puffering causes Apache to SIGSEGV

2001-07-18 Thread brueckner

ID: 12227
User updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
Status: Open
Bug Type: Output Control
Operating System: Linux 2.2.16-SMP
PHP Version: 4.0.6
New Comment:

One more comment which I forgot before:

This does NOT happen when I do not use auto_prepend_file and call my function inside 
the main script instead.


Previous Comments:


[2001-07-18 06:07:05] [EMAIL PROTECTED]

When using ob_start() with a script included via auto_prepend_file and then doing 
something like this:

ob_start(my_flush);

function my_flush($buffer)
  {
$buffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);

return $buffer;
  }

PHP 4.0.6 SIGSEGV's with this message in the error_log:

[Wed Jul 18 11:55:08 2001]  Script:  '/home/htdocs/test.php'
---
output.c(235) : Block 0x0824C940 status:
Beginning:  Overrun (magic=0x08294990, expected=0x7312F8DC)
  End:  Unknown
---
./zend_execute.c(334) :  Freeing 0x082A8CB4 (28131 bytes), 
script=/home/htdocs/test.php
zend_variables.c(117) : Actual location (location was relayed)
[Wed Jul 18 11:55:08 2001] [notice] child pid 30192 exit signal Segmentation fault 
(11)

If I replace the line
$buffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);
with
$newbuffer = preg_replace(/(!--REPLACE\\s.*?--)/e, parse(\\\1\),
$buffer);

it works fine.

Any ideas for a fix?

Harry






Edit this bug report at http://bugs.php.net/?id=12227edit=1


-- 
PHP Development Mailing List http://www.php.net/
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]