I believe the issue is that if you have "GZIP HTML Output" set to yes (under "Cookies and HTTP Header Options" in the admincp options), then ob_start() is called before there's any output (which is of course the only way it can be gzip'd before it's sent). It's the same for all the control panel pages, I think. So I think maybe what you could do is something like: (Edit: I removed the code because the code above already calls ob_flush(), and in any case the right thing to do is call vbflush as Paul posted below.)
But I wonder what happens if the web server is set to gzip output? If so, maybe you'll have the same problem even after doing this.
Edit: But I just noticed that you were calling ob_flush(), so if buffering were the problem it seems like that should have done it. So maybe the issue *is* that your web server is buffering. I did a little more research and it looks like if mod_gzip or mod_deflate is configured to compress that type of output, then it will be buffered. (I'm not sure what content-type is sent if you don't explicitly set a header).
|