Skip to content

sync #11

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

Merged
merged 76 commits into from
Nov 21, 2021
Merged

sync #11

merged 76 commits into from
Nov 21, 2021

Conversation

chopins
Copy link
Owner

@chopins chopins commented Nov 21, 2021

No description provided.

smalyshev and others added 30 commits November 14, 2021 23:35
Make sure to destroy the old value only after assigning the new
one. Otherwise we may try to double free, e.g. if GC runs during
this dtor.

This caused an assertion failure in phpro/grumphp and is likely
the cause for bug #81603 as well.
* PHP-8.0:
  Safely reassign array in usort()
* PHP-8.1:
  Safely reassign array in usort()
Make sure to destroy the old value only after assigning the new
one. Otherwise we may try to double free, e.g. if GC runs during
this dtor.

This caused an assertion failure in phpro/grumphp and is likely
the cause for bug #81603 as well.

(cherry picked from commit 6f38acf)

(I applied this to the wrong base branch at first...)
* PHP-7.4:
  Safely reassign array in usort()
* PHP-8.0:
  Safely reassign array in usort()
* PHP-8.1:
  Safely reassign array in usort()
Backport of a892647 to 7.4.
* PHP-7.4:
  Fixed bug #81626
* PHP-8.0:
  Fixed bug #81626
* PHP-8.1:
  Fixed bug #81626
* PHP-7.3:
  [ci skip] Fix news entry for bug #79971
  [ci skip] Update NEWS
* PHP-7.4:
  [ci skip] Fix news entry for bug #79971
  [ci skip] Update NEWS
* PHP-8.0:
  [ci skip] Fix news entry for bug #79971
  [ci skip] Update NEWS
* PHP-8.1:
  [ci skip] Fix news entry for bug #79971
  [ci skip] Update NEWS
* PHP-7.3:
  7.3.34 might be next
* PHP-7.4:
  7.3.34 might be next
* PHP-8.0:
  7.3.34 might be next
* PHP-8.1:
  7.3.34 might be next
Add zend_fetch_class_with_scope() which accepts a scope to use for
self/parent, and use that during constant expression evaluation.

Closes GH-7649.
* PHP-8.1:
  Fix bug #81611
  Extract code for reporting a zend_fetch_class() error
As we don't register the resource, the resource dtor is not called
and will not decrement the refcount.
* PHP-8.1:
  Fix leak when persistent PDO connection fails
* PHP-8.0:
  OpenBSD ZTS build fix
* PHP-8.1:
  OpenBSD ZTS build fix
dstogov and others added 29 commits November 17, 2021 18:23
* PHP-8.1:
  Fixed bug #81607 (CE_CACHE allocation with concurrent access)
* PHP-8.0:
  JIT: Fixed memory leak in Zend/tests/concat_002.phpt introduced by fac78ee
* PHP-8.1:
  JIT: Fixed memory leak in Zend/tests/concat_002.phpt introduced by fac78ee
In this case we produce additional warnings when preloading
evaluates constants. Possibly we shouldn't be evaluating expressions
with side-effects during preloading, but for now just skip this
test.
* PHP-8.1:
  Skip test under preloading
* PHP-8.0:
  Clarify that preg_match_all() cannot return null
* PHP-8.1:
  Clarify that preg_match_all() cannot return null
GMP directly implements internal serialize/unserialize handlers
rather than going through the Serializable interface, so it ended
up being missed when adding the new __serialize()/__unserialize()
methods to other classes.

The serialization format is similar to before, but uses hex instead
of decimal encoding and omits the members if not used (which should
be almost always).
* PHP-8.1:
  Implement __serialize() and __unserialize() on GMP
* PHP-8.0:
  Update reflection test after stub change
* PHP-8.1:
  Update reflection test after stub change
zend_inheritance_cache_entry.[num_]warnings must be updated before this entry is made visible to other processes
* PHP-8.1:
  Fixed a crash becaeuse of race condition in inheritance cache
This has been disabled for a long time, and the whole optimization
is no longer relevant given changes in PHP 8.1
Skip WeakMap lookup check used only for debug assertion in non-debug builds

Use the `zend_hash_lookup` helper to optimize adding a WeakMap entry
if the entry doesn't already exist.

Closes GH-7670
(When a value's destructor triggers a resizing or rehashing of the WeakMap)

Closes GH-7671
@chopins chopins merged commit 7fa87be into chopins:master Nov 21, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.