Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:22030 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 6497 invoked by uid 1010); 27 Feb 2006 12:47:19 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 6482 invoked from network); 27 Feb 2006 12:47:18 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 27 Feb 2006 12:47:18 -0000 X-Host-Fingerprint: 81.103.221.48 mta08-winn.ispmail.ntl.com Solaris 8 (1) Received: from ([81.103.221.48:17856] helo=mta08-winn.ispmail.ntl.com) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id 95/60-25426-5D4F2044 for ; Mon, 27 Feb 2006 07:47:17 -0500 Received: from aamta10-winn.ispmail.ntl.com ([81.103.221.35]) by mta08-winn.ispmail.ntl.com with ESMTP id <20060227124709.MNDN29066.mta08-winn.ispmail.ntl.com@aamta10-winn.ispmail.ntl.com>; Mon, 27 Feb 2006 12:47:09 +0000 Received: from win2ks ([82.3.16.111]) by aamta10-winn.ispmail.ntl.com with ESMTP id <20060227124709.TCMT22495.aamta10-winn.ispmail.ntl.com@win2ks>; Mon, 27 Feb 2006 12:47:09 +0000 Reply-To: To: "'Michael Wallner'" , Date: Mon, 27 Feb 2006 12:49:29 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook, Build 11.0.6353 In-Reply-To: <68.AB.30574.5C7E2044@pb1.pair.com> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506 Thread-Index: AcY7l/HUMgjVGLb2SVSd8W9OrjFfMgAA7J9A Message-ID: <20060227124709.TCMT22495.aamta10-winn.ispmail.ntl.com@win2ks> Subject: RE: [PHP-DEV] Revisiting output control code From: jared.williams1@ntlworld.com ("Jared Williams") References: <68.AB.30574.5C7E2044@pb1.pair.com> > I'd like to suggest that we revisit the output control > (output buffering) code base. > The current implementation uses way too less commands to do > too many different operations, which almost always causes > problems with output handlers that need to maintain a state > or context. > > Short example: > ob_clean() causes havoc with ext/zlib ob handlers and any > handlers found in pecl/http. > ob_clean() passes currently buffered input through the > handler and discards it, which means in the case of the gz > handler that the gzip/zlib header bytes (and more) are > missing from the sent data. > > Things I think that should come with the new code: > Support for an opaque handler context, which will be > passed to the handler. > More distinct commands like FLUSH, RESTART and/or CLEAN. > Thoughts/comments/flames? Sounds like should be built upon/replaced with streams. Jared