Quote from http://php.net/ob_end_clean
Reasons for failure are first that you called the function without an active buffer or that for some reason a buffer could not be deleted (possible for special buffer)
What is this special buffer?
Right now, to clean all buffers, I have code like this
while (@ob_end_clean());
But if for some reason it should encounter a "special buffer" this would probably make an infinite loop.