Szymon Juraszczyk wrote:
> 
> <html>
> <body>
> 
> <%
>   for (my $i = 1; $i <= 10; $i++) {
>     $Response->Write("Test $i<br>\n");
>   }
> 
>   $Response->Flush();
> 
>   sleep(10);
> 
>  $Response->Write("End<br>");
> %>
> 
> </body>
> </html>
> 
>   I suspect that mod-perl is buffering something. Your code does
> $Response->{'r'}->print() in Flush() - I checked that. Maybe my
> modperl-enabled Apache is kind of lame? I use apache-perl-1.3.22-2-1.26-3
> Debian package.
> 

This should work.  What if you put the Flush() in the for loop.  
I wonder whether your browser needs to see more than one flush
to start rendering.

My latest apache's that I have used for my own servers are 1.3.14 & 1.3.20, 
& mod_perl 1.25 on the 1.3.20 server, I don't know for the other.  
I have heard users complaining with 1.26 before, so might try downgrading 
my mod_perl & recompiling.  You can also try this:

# global.asa
sub Script_OnFlush { Apache->request->rflush() }

The routine might be Apache->request->flush(), I can't remember,
and it doesn't seem to be documented.  Apache::ASP when flushing
uses $| = 1, combined with Apache->request->print to do its flushing
which might be broken on your version (?).

Whatever ends up being your fix for this, please post your solution
to the list.

Thanks,

Josh

_________________________________________________________________
Joshua Chamas                           Chamas Enterprises Inc.
NodeWorks Founder                       Huntington Beach, CA  USA 
http://www.nodeworks.com                1-714-625-4051

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to