The sizeof()s for Content-Length and Transfer-Encoding were missing
the trailing ":". Apart from being generally wrong, this no longer
verified that the header actually contains a colon, leading to the
null http_header_value being used.
Additionally, in the interest of being defensive, also make sure
that http_header_value is non-null by setting it to the end of
the header line (effectively an empty string) if there is no colon.
If the following conditions are correct, this value is not going
to be used though.
If a C++11 source is compiled, thread_local is preferred. Furthermore,
at least GCC treats __thread vs. thread_local a different way and under
certain circumstances would refuse to compile __thread is a C++11 source.
This change is far behind in time, any up-to-date compiler supports C++11
and otherwise it won't take effect on lower versions.
It was a mistake to make d_name a pointer. d_name has to be allocated
in the body of struct dirent as per POSIX.1-2008. The binary
compatibility is kept through the extra padding, which will be removed
in 7.3.
* Correctly identify unused speculative preconnections from browsers
like Chrome and Firefox
* Add a new message to the debug level that is emitted when a TCP
connection is closed without sending any request (a preconnection)
* Fix an issue where the existing debug messages were not being
displayed even when debug mode was enabled
In this case it loops through different subjects without looking for sub
matches and matches are done against the same pattern. Thus, don't reset
the UTF check flag but use it to check whether JIT should be used and
otherwise let PCRE to do the job according to what was saved into the
pattern.
5060fc23 attempted to fix#68948 by treating all non-uri streams
as non-blocking, however php://fd/* streams (which includes stdin)
may block if the other end of the IPC isn't finished.
This represents a partial revert to the pre RC6 state,
but includes an escape hatch for php://memory and php://temp
streams which are local to the current process.
This also restores stream_set_chunk_size test to previous state.