If the server sends a compressed response, $do_compress remains set to 1 for the next request. So the server always tries to uncompress the next request, even when it's not really compressed (which causes it to fail). This initializes $do_compress = 0 before checking the request for compression.
If the server sends a compressed response, $do_compress remains set to 1 for the next request. So the server always tries to uncompress the next request, even when it's not really compressed (which causes it to fail). This initializes $do_compress = 0 before checking the request for compression.