Bug#436507: [Mason-devel] Bug#436507: libhtml-mason-perl: autoflush breaks store modifier

Frédéric Brière <[email protected]> Fri, 25 Jul 2008 11:45:43 -0400
Newsgroups gmane.linux.debian.devel.bugs.general,gmane.comp.web.mason.devel
Message-ID <[email protected]>
--H1spWtNR+x+ondvy
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Thu, Jul 24, 2008 at 10:26:00PM -0500, Dave Rolsky wrote:
> I'm sort of sick of dealing with the vast number of bugs between buffers, 

Sorry to hear that.

Would it help if I told you that revision 3748 is to blame?  (Thank you
git-bisect!)  Removing that big if() in flush_buffer() is enough to fix
it -- though it obviously breaks the "flush_filter" test it was meant to
fix in the first place.

> If someone else wants to look at it, feel free, but be warned that it's a 
> bit of a swamp in there ;)

I'd probably do more harm than good by putting my greasy hands in there.
All I can do right now is give you the corresponding test for your
suite.  HTH.


-- 
echo "Your stdio isn't very std."
		-- Larry Wall in Configure from the perl distribution

--H1spWtNR+x+ondvy
Content-Type: text/x-diff; charset=iso-8859-1
Content-Disposition: attachment; filename="flush_and_store.patch"
Content-Transfer-Encoding: quoted-printable

commit fb923923b21682b224efa2e6d2b7798093cc2ac3
Author: Fr=E9d=E9ric Bri=E8re <[email protected]>
Date:   Fri Jul 25 11:04:10 2008 -0400

    Created flush_and_store test for Debian bug #436507

diff --git a/t/05-request.t b/t/05-request.t
index 5698aa4..a590f93 100644
--- a/t/05-request.t
+++ b/t/05-request.t
@@ -935,5 +935,25 @@ EOF
=20
 #------------------------------------------------------------
=20
+    $group->add_test( name =3D> 'flush_and_store',
+                      description =3D> 'Test that $m->flush_buffer in a =
store\'d component will not flush to STDOUT',
+                      component =3D> <<'EOF',
+<%def .world>\
+World\
+% $m->flush_buffer;
+</%def>
+
+% my $world;
+% $m->comp( { store =3D> \$world }, '.world');
+% print "Hello, $world!\n";
+EOF
+                      expect =3D> <<'EOF',
+
+Hello, World!
+EOF
+                    );
+
+#------------------------------------------------------------
+
     return $group;
 }

--H1spWtNR+x+ondvy--