Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sync master #6

Merged
merged 261 commits into from Oct 1, 2020
Merged

sync master #6

merged 261 commits into from Oct 1, 2020

Conversation

chopins
Copy link
Owner

@chopins chopins commented Oct 1, 2020

No description provided.

nikic and others added 30 commits September 21, 2020 12:12
Indicates an implementation bug, make sure we can automatically
detect it.
Due to improvements to early binding, the opcode based check is
no longer accurate. Reuse the syntactic check we're already using
for declares instead.
As we're branching soon, reduce the number of jobs we run on each
commit, so that Travis can keep up with its role as the fast
feedback build.
We should only produce IS_UNDEF if an exception is thrown, this
check is not needed.
These error conditions throw in the function implementations,
make the opcodes match.
The "if ever" here is the relevant bit...
The implementation did not check for PQunescapeBytea failure
correctly, because it checked for a null pointer after estrndup,
which certainly cannot happen. Inspection of the PGunescapeBytea
implementation has shown that this function can only fail on OOM,
so let's check for that explicitly and remove false as a possible
return type.

While we're here, avoid an unnecessary copy of the result.
They are unnecessary and just take time for no good reason
Instead of attempting to map large files into memory at once, we map
chunks of at most `PHP_STREAM_MMAP_MAX` bytes, and repeat that until we
hit the point where `php_stream_seek()` fails (see bug 54902), and copy
the rest of the file by reading and writing small chunks.

We also fix the mapping behavior for zero bytes on Windows, which did
not error (as with `mmap()`), but would have mapped the remaining file.
* PHP-7.4:
  Fix mmap copying
Checking the linker compatibility with extranous `ImageLoad()` calls is
possible, but unnecessary, since the modules are either already loaded
or loaded shortly afterwards, so that we can get the required
information directly from the module handles.  And actually, doing
`ImageLoad()` as well as `LoadLibrary()` leaves a tiny room for a race
condition, because both functions will lookup the module in the search
path, so there is no *guarantee* that both are dealing with the same
module.  Dropping the `ImageLoad()` calls also has the advantage to no
longer face the issue reported in bug #79557.  A very minor additional
advantage is that we no longer have to link against Imagehlp.dll.

Furthermore, there is no need to check for CRT compatibility multiple
times, so we can simplify the signature of `php_win32_crt_compatible`,
and at the same time clean up main.c a bit.

These changes require to change the signature of the exported
`php_win32_image_compatible` and `php_win32_crt_compatible` functions,
which now expect a `HMODULE` and nothing, respectively, instead of the
module name.
This was already checked directly above.
The same error condition is a ValueError in mysqli, be consistent.

Additionally, do not display the argument name for these errors.
As the signatures are overloaded, the argument name may not match
the meaning at all.
We missed the change to make this an Error exception in PHP 8,
but at least elevate it to a warning, to avoid a notice -> exception
jump at a later time.
We previously couldn't increase the error level here because it
was coupled to comparison handling. This is no longer the case
in PHP 8.
This makes it line up with pg_fetch_all_columns(), as well as
similar functions in other exts, such as mysqli_fetch_all().
It is used only once with allow_errors enabled
carusogabriel and others added 29 commits September 29, 2020 22:32
* PHP-7.4:
  Fixed incorrect logical conditions
* PHP-7.3:
  Fixed incorrect logical condition
* PHP-7.4:
  Fixed incorrect logical condition
* PHP-7.3:
  Fixed incorrect error message
* PHP-7.2:
  bump version to 7.2.35-dev
* PHP-7.4:
  Fixed incorrect error message
* PHP-7.3:
  bump version to 7.2.35-dev
* PHP-7.4:
  bump version to 7.2.35-dev
* PHP-7.2:
  bump version to 7.2.35-dev
* PHP-7.3:
  bump version to 7.2.35-dev
* PHP-7.4:
  Fixed hex char parsing
Remove ldap_control_paged_result and ldap_control_paged_result_response
 which have been deprecated in PHP 7.4, in favor of new $controls
 parameters for ldap request functions.
@chopins chopins merged commit ee22aa4 into chopins:master Oct 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet