summaryrefslogtreecommitdiff
path: root/ext/xsl/xsltprocessor.c
Commit message (Collapse)AuthorAgeFilesLines
* Make convert_to_*_ex simple aliases of convert_to_*Nikita Popov2021-01-141-1/+1
| | | | | | | | | | | | | Historically, the _ex variants separated the zval first, if a conversion was necessary. This distinction no longer makes sense since PHP 7. The only difference that was still left is that _ex checked whether the type is the same first, but the usage of these macros did not actually distinguish on whether such an inlined check is valuable or not in a given context. Also drop the unused convert_to_explicit_type macros.
* Promote warnings in ext/xslNikita Popov2020-09-281-23/+22
|
* Promote a few forgotten warnings to exceptionsMáté Kocsis2020-09-251-3/+4
| | | | Closes GH-6211
* Consolidate new union type ZPP macro namesMáté Kocsis2020-09-111-2/+2
| | | | | | | They will now follow the canonical order of types. Older macros are left intact due to maintaining BC. Closes GH-6112
* Move custom type checks to ZPPMáté Kocsis2020-09-021-13/+26
| | | | Closes GH-6034
* Implement named parametersNikita Popov2020-07-311-0/+1
| | | | | | | | | | | | | | | | | | From an engine perspective, named parameters mainly add three concepts: * The SEND_* opcodes now accept a CONST op2, which is the argument name. For now, it is looked up by linear scan and runtime cached. * This may leave UNDEF arguments on the stack. To avoid having to deal with them in other places, a CHECK_UNDEF_ARGS opcode is used to either replace them with defaults, or error. * For variadic functions, EX(extra_named_params) are collected and need to be freed based on ZEND_CALL_HAS_EXTRA_NAMED_PARAMS. RFC: https://wiki.php.net/rfc/named_params Closes GH-5357.
* Remove no_separation flagNikita Popov2020-07-071-1/+0
|
* Disallow separation in a number of callbacksNikita Popov2020-07-071-2/+1
| | | | All of these clearly do not need separation support.
* Remove proto comments from C filesMax Semenik2020-07-061-21/+12
| | | | Closes GH-5758
* Avoid warning on exception in xsl extNikita Popov2020-06-251-1/+3
|
* Fix [-Wundef] warning in XLS extensionGeorge Peter Banyard2020-05-201-1/+1
|
* Fix UNKNOWN default values in ext/xslMáté Kocsis2020-05-061-13/+15
|
* Generate method entries for ext/xslMáté Kocsis2020-04-121-24/+0
| | | | Closes GH-5372
* Perform some maintenance work on the XSL extensionMáté Kocsis2020-03-101-121/+74
| | | | | Added stubs, fixed some ZPP, and changed PHP_FALIASes to PHP_METHODs. Closes GH-5241
* Remove DOM_GET_THIS macroNikita Popov2020-03-091-17/+7
| | | | This macro is trivial, it's more obvious to use ZEND_THIS directly.
* Merge branch 'PHP-7.4'Christoph M. Becker2020-01-301-1/+1
|\ | | | | | | | | * PHP-7.4: Fix #70078: XSL callbacks with nodes as parameter leak memory
| * Merge branch 'PHP-7.3' into PHP-7.4Christoph M. Becker2020-01-301-1/+1
| |\ | | | | | | | | | | | | * PHP-7.3: Fix #70078: XSL callbacks with nodes as parameter leak memory
| | * Fix #70078: XSL callbacks with nodes as parameter leak memoryChristoph M. Becker2020-01-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | The fix for bug #49634 solved a double-free by copying the node with `xmlDocCopyNodeList()`, but the copied node is later freed by calling `xmlFreeNode()` instead of `xmlFreeNodeList()`, thus leaking memory. However, there is no need to treat the node as node list, i.e. to copy also the node's siblings; just creating a recursive copy of the node with `xmlDocCopyNode()` is sufficient, while that also avoids the leak.
* | | Use RETURN_THROWS() during ZPP in most of the extensionsMáté Kocsis2019-12-311-7/+7
| | | | | | | | | | | | Except for some bigger ones: reflection, sodium, spl
* | | Cleanup return values when parameter parsing is unsuccessfulMáté Kocsis2019-10-301-6/+6
| | |
* | | Remove mention of PHP major version in Copyright headersGabriel Caruso2019-09-251-2/+0
| | | | | | | | | | | | Closes GH-4732.
* | | Merge branch 'PHP-7.4'Dmitry Stogov2019-06-061-4/+7
|\ \ \ | |/ / | | | | | | | | | * PHP-7.4: Cheaper checks for exceptions thrown from __toString()
| * | Cheaper checks for exceptions thrown from __toString()Dmitry Stogov2019-06-061-4/+7
| | |
* | | Merge branch 'PHP-7.4'Nikita Popov2019-06-051-7/+17
|\ \ \ | |/ /
| * | Allow exceptions in __toString()Nikita Popov2019-06-051-7/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | RFC: https://wiki.php.net/rfc/tostring_exceptions And convert some object to string conversion related recoverable fatal errors into Error exceptions. Improve exception safety of internal code performing string conversions.
* | | Merge branch 'PHP-7.4'Nikita Popov2019-04-121-1/+1
|\ \ \ | |/ /
| * | Fix strict aliasing violation in phpdbgNikita Popov2019-04-121-1/+1
| | | | | | | | | | | | | | | | | | By explicitly computing the message length from bytes. This also makes sure that the length is interpreted in an endianness-independent manner.
* | | Refactor zend_object_handlers API to pass zend_object* and zend_string* ↵Dmitry Stogov2019-02-041-8/+10
|/ / | | | | | | insted of zval(s).
* | Remove local variablesPeter Kokot2019-02-031-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes the so called local variables defined per file basis for certain editors to properly show tab width, and similar settings. These are mainly used by Vim and Emacs editors yet with recent changes the once working definitions don't work anymore in Vim without custom plugins or additional configuration. Neither are these settings synced across the PHP code base. A simpler and better approach is EditorConfig and fixing code using some code style fixing tools in the future instead. This patch also removes the so called modelines for Vim. Modelines allow Vim editor specifically to set some editor configuration such as syntax highlighting, indentation style and tab width to be set in the first line or the last 5 lines per file basis. Since the php test files have syntax highlighting already set in most editors properly and EditorConfig takes care of the indentation settings, this patch removes these as well for the Vim 6.0 and newer versions. With the removal of local variables for certain editors such as Emacs and Vim, the footer is also probably not needed anymore when creating extensions using ext_skel.php script. Additionally, Vim modelines for setting php syntax and some editor settings has been removed from some *.phpt files. All these are mostly not relevant for phpt files neither work properly in the middle of the file.
* | Remove yearly range from copyright noticeZeev Suraski2019-01-301-1/+1
| |
* | Use ZEND_THIS macro to hide implementation details in extensions code.Dmitry Stogov2018-11-151-4/+4
| |
* | Replace zend_parse_method_parameters() by zend_parse_parameters() and avoid ↵Dmitry Stogov2018-11-141-1/+2
| | | | | | | | useless checks.
* | Replace getThis() by EX(This), when additional check is not necessary.Dmitry Stogov2018-11-141-3/+3
|/
* Remove unused Git attributes identPeter Kokot2018-07-251-2/+0
| | | | | | | | | | | | | | | The $Id$ keywords were used in Subversion where they can be substituted with filename, last revision number change, last changed date, and last user who changed it. In Git this functionality is different and can be done with Git attribute ident. These need to be defined manually for each file in the .gitattributes file and are afterwards replaced with 40-character hexadecimal blob object name which is based only on the particular file contents. This patch simplifies handling of $Id$ keywords by removing them since they are not used anymore.
* Update http to httpsDusta2018-06-251-1/+1
|
* Export standard object handlers, to avoid indirect accessDmitry Stogov2018-05-311-7/+2
|
* Use zend_string_release_ex() instread of zend_string_release() in places, ↵Dmitry Stogov2018-05-281-1/+1
| | | | where we sure about string persistence.
* Keep initialized object_handlers structures in read-only memory.Dmitry Stogov2018-03-141-2/+2
|
* Use int instead of long in protosGabriel Caruso2018-02-231-2/+2
|
* year++Xinchen Hui2018-01-021-1/+1
|
* Cleanup type conversionDmitry Stogov2017-12-071-2/+1
|
* RC manipulation cleanup 2Xinchen Hui2017-11-021-3/+1
|
* Avoid HashTable allocations for empty arrays (using zend_empty_array).Dmitry Stogov2017-10-241-1/+3
|
* Refactored array creation API. array_init() and array_init_size() are ↵Dmitry Stogov2017-09-201-2/+1
| | | | converted into macros calling zend_new_array(). They are not functions anymore and don't return any values.
* Update copyright headers to 2017Sammy Kaye Powers2017-01-021-1/+1
|
* Fixed compilation warningsDmitry Stogov2016-06-221-5/+4
|
* Removed "zend_fcall_info.function_table". It was assigned in many places, ↵Dmitry Stogov2016-04-271-1/+0
| | | | but is never used.
* Removed zend_fcall_info.symbol_tableDmitry Stogov2016-03-021-1/+0
|
* More fixing for bug #71540Stanislav Malyshev2016-02-151-1/+1
|
* Fix bug #71540 - NULL pointer dereference in xsl_ext_function_php()Stanislav Malyshev2016-02-151-0/+4
|