summaryrefslogtreecommitdiff
path: root/Zend
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'PHP-7.4'Nikita Popov2019-12-182-3/+34
|\ | | | | | | | | * PHP-7.4: Rethrow generator exception even without active stack frame
| * Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2019-12-182-3/+34
| |\ | | | | | | | | | | | | * PHP-7.3: Rethrow generator exception even without active stack frame
| | * Rethrow generator exception even without active stack frameNikita Popov2019-12-182-3/+34
| | | | | | | | | | | | | | | | | | | | | Finally blocks in generators may be invoked during shutdown, in which case we don't have a stack frame. Similar to what zend_call_function does, we still need to rethrow these exceptions, otherwise they will be hidden (and leak).
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-182-1/+23
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix use-after-free when trying to write to closure property
| * | Fix use-after-free when trying to write to closure propertyNikita Popov2019-12-182-1/+23
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-183-10/+30
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix freeing of dynamic call name
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2019-12-183-10/+30
| |\ \ | | |/ | | | | | | | | | * PHP-7.3: Fix freeing of dynamic call name
| | * Fix freeing of dynamic call nameNikita Popov2019-12-183-10/+30
| | | | | | | | | | | | | | | | | | We need to free op2 if the call construction fails. Also remove a redundant check for !call.
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-182-1/+29
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix const/cv freeing on failed reference assignment
| * | Fix const/cv freeing on failed reference assignmentNikita Popov2019-12-182-1/+29
| | |
* | | Fix leak of dynamic property name in address helperNikita Popov2019-12-172-4/+22
| | |
* | | Merge branch 'PHP-7.4'Dmitry Stogov2019-12-171-1/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Property names of internal classes from temporary extensins, loaded by dl(), may be emalloc-ed strings.
| * | Property names of internal classes from temporary extensins, loaded by dl(), ↵Dmitry Stogov2019-12-171-1/+1
| | | | | | | | | | | | may be emalloc-ed strings.
* | | Merge branch 'PHP-7.4'Dmitry Stogov2019-12-171-1/+3
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed memory leak
| * | Fixed memory leakDmitry Stogov2019-12-171-1/+3
| | |
* | | Merge branch 'PHP-7.4'Dmitry Stogov2019-12-171-1/+6
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed memory leaks
| * | Fixed memory leaksDmitry Stogov2019-12-171-1/+6
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-161-0/+2
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Set opcache.optimization_level=0 in test
| * | Set opcache.optimization_level=0 in testNikita Popov2019-12-161-0/+2
| | | | | | | | | | | | | | | Otherwise opcache "inlines" the function, which causes a minor difference in destruction behavior.
* | | Merge branch 'PHP-7.4'Stanislav Malyshev2019-12-161-2/+2
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Test fixes
| * | Test fixesStanislav Malyshev2019-12-161-2/+2
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-163-0/+20
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #78973
| * | Fixed bug #78973Nikita Popov2019-12-163-0/+20
| | | | | | | | | | | | | | | Save opline in leave helper to correctly handle destructor calls during CV freeing (or other leave freeing).
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-132-0/+40
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #78921
| * | Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2019-12-132-0/+40
| |\ \ | | |/ | | | | | | | | | * PHP-7.3: Fixed bug #78921
| | * Fixed bug #78921Nikita Popov2019-12-132-0/+40
| | | | | | | | | | | | | | | By resetting fake_scope during autoloading. We already do the same when executing destructors.
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-133-27/+23
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Introduce extra counter to avoid RTD key collisions
| * | Introduce extra counter to avoid RTD key collisionsNikita Popov2019-12-133-27/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also generate a fatal error if a collision occurs in zend_compile. This is not perfect, because collisions might still be introduced via opcache, if one file is included multiple times during a request, invalidate in the meantime and recompiled by different processes. This still needs to be addressed, but this patch fixes the much more common case of collisions occuring when opcache is not used. Fixes bug #78903.
* | | Remove support for mixing parameter order in implode()Máté Kocsis2019-12-121-5/+4
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-121-3/+10
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #78950: Preloading trait method with static variables
| * | Fixed bug #78950: Preloading trait method with static variablesNikita Popov2019-12-121-3/+10
| | | | | | | | | | | | | | | | | | We need to make sure that trait methods with static variables allocate a separate MAP slot for the static variables pointer, rather than working in-place.
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-111-11/+5
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Revert "Fixed bug #78903: Conflict in RTD key for closures results in crash"
| * | Revert "Fixed bug #78903: Conflict in RTD key for closures results in crash"Nikita Popov2019-12-111-11/+5
| | | | | | | | | | | | | | | | | | This reverts commit b55033fa18afd9bb60fc4537270266d808ec0868. This breaks ext/opcache/tests/bug65915.phpt.
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-111-5/+11
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #78903: Conflict in RTD key for closures results in crash
| * | Fixed bug #78903: Conflict in RTD key for closures results in crashNikita Popov2019-12-111-5/+11
| | | | | | | | | | | | | | | | | | I wasn't able to create a simple reproducer for this. General approach is the same as for anonymous classes: If the key is already used, reuse the old definition.
* | | Merge branch 'PHP-7.4'Dmitry Stogov2019-12-112-2/+11
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Addirional fix for bug #78918
| * | Addirional fix for bug #78918Dmitry Stogov2019-12-112-2/+11
| | |
* | | Merge branch 'PHP-7.4'Dmitry Stogov2019-12-113-2/+16
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #78937 (Preloading unlinkable anonymous class can segfault)
| * | Fixed bug #78937 (Preloading unlinkable anonymous class can segfault)Dmitry Stogov2019-12-113-2/+16
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-101-2/+2
|\ \ \ | |/ / | | | | | | | | | | | | * PHP-7.4: Add support for class_alias to preloading Fixed bug #78935: Check that all linked classes can be preloaded
| * | Fixed bug #78935: Check that all linked classes can be preloadedNikita Popov2019-12-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | During preloading, check that all classes that have been included as part of the preload script itself (rather than through opcache_compile_file) can actually be preloaded, i.e. satisfy Windows restrictions, have resolved initializers and resolved property types. When resolving initializers and property types, also autoload additional classes. Because of this, the resolution runs in a loop.
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-091-0/+1
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fix build
| * | Fix buildNikita Popov2019-12-091-0/+1
| | |
* | | Merge branch 'PHP-7.4'Dmitry Stogov2019-12-092-0/+8
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Export zend_init_func_run_time_cache()
| * | Export zend_init_func_run_time_cache()Dmitry Stogov2019-12-092-0/+8
| | |
* | | Merge branch 'PHP-7.4'Dmitry Stogov2019-12-091-0/+6
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Call zend_unregister_ini_entries() when unload extension loaded through dl() without MSHUTDOWN callback. Extensions with MSHUTDOWN should use UNREGISTER_INI_ENTRIES().
| * | Call zend_unregister_ini_entries() when unload extension loaded through dl() ↵Dmitry Stogov2019-12-091-0/+6
| | | | | | | | | | | | | | | | | | without MSHUTDOWN callback. Extensions with MSHUTDOWN should use UNREGISTER_INI_ENTRIES().
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-094-2/+28
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Fixed bug #78926: Handle class table reallocation on failed link
| * | Fixed bug #78926: Handle class table reallocation on failed linkNikita Popov2019-12-094-2/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we change back the bucket key on a class linking failure, make sure to reload the bucket pointer, as the class table may have been reallocated in the meantime. Also remove a bogus bucket key change in anon class registration: We don't actually rename the class in this case anymore, the RTD key is already the final name.
* | | Merge branch 'PHP-7.4'Nikita Popov2019-12-092-1/+12
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Use unmangled named in property type inheritance error