Remi Collet
940c35366d
typo
2021-08-03 12:10:20 +02:00
Remi Collet
112527d677
Fix bug #81325 Segfault in zif_simplexml_import_dom
2021-08-03 12:06:36 +02:00
Christoph M. Becker
24d9527c75
SimpleXMLElement::addAttribute() is a void function
...
Closes GH-7033.
2021-05-22 22:28:34 +02:00
Máté Kocsis
eedc988a4e
Fix some nullable return types in ext/simplexml
...
Closes GH-7004
2021-05-18 14:43:36 +02:00
Stanislav Malyshev
eed03fce59
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Revert "Fix #80852 : Stack-overflow when json_encode()'ing SimpleXMLElement"
2021-04-26 21:02:09 -07:00
Stanislav Malyshev
2b3346208a
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Revert "Fix #80852 : Stack-overflow when json_encode()'ing SimpleXMLElement"
2021-04-26 21:02:03 -07:00
Stanislav Malyshev
1b88c85cd8
Revert "Fix #80852 : Stack-overflow when json_encode()'ing SimpleXMLElement"
...
Sorry, this solution seems to have BC breaks, will need to look
for better one.
This reverts commit 9f7e8b777c
.
2021-04-26 21:01:25 -07:00
Stanislav Malyshev
6de2d54425
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80852 : Stack-overflow when json_encode()'ing SimpleXMLElement
2021-04-26 20:50:29 -07:00
Stanislav Malyshev
76637017ac
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #80852 : Stack-overflow when json_encode()'ing SimpleXMLElement
2021-04-26 20:50:15 -07:00
Christoph M. Becker
9f7e8b777c
Fix #80852 : Stack-overflow when json_encode()'ing SimpleXMLElement
...
We ignore `XML_ENTITY_DECL` nodes when getting the hash of the
properties of a `SimpleXMLElement`.
2021-04-26 20:43:45 -07:00
Máté Kocsis
cb84e5c332
Fix arginfo/ZPP mismatch for simplexml_import_dom
...
Closes GH-6905
2021-04-26 11:09:30 +02:00
Nikita Popov
c5401854fc
Run tidy
...
This should fix most of the remaining issues with tabs and spaces
being mixed in tests.
2020-09-18 14:28:32 +02:00
Máté Kocsis
36fd95b524
Generate arginfos
2020-09-16 21:28:27 +02:00
Máté Kocsis
de912821e0
Display string default values in stubs more uniformly
...
Settling on using quoted string
2020-09-16 21:27:01 +02:00
Máté Kocsis
628db3f3b5
Fix UNKNOWN default values in various extensions
...
Closes GH-6075
2020-09-07 19:02:02 +02:00
Máté Kocsis
6c8fb123d2
Promote warnings to exceptions in ext/simplexml
...
Closes GH-6011
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
2020-08-25 15:15:58 +02:00
Nikita Popov
f4e9d0e325
Don't return temporary from SXE write_property handler
...
Return the original value. If we don't return the original value,
we need to own the zval, which we don't.
For clarity also switch things to work on a zend_string* value
instead of a zval*.
2020-08-25 11:28:44 +02:00
Nikita Popov
afde6dcf5f
Simplify change_node_zval implementation
...
At this point, the value has already been converted into a string.
2020-08-25 11:01:48 +02:00
Nikita Popov
8f61854108
Add a missing null check in simplexml
2020-08-13 16:46:08 +02:00
Nikita Popov
fc7bab3aee
Throw on uninitialized SimpleXMLElement
...
Elevate this warning into an Error, as usual. Add a few checks
in places that were missing them.
2020-08-13 16:13:02 +02:00
Máté Kocsis
7aacc705d0
Add many missing closing PHP tags to tests
...
Closes GH-5958
2020-08-09 22:03:36 +02:00
Benjamin Eberlei
eaeceb3293
Consolidate Parameter Names For ext/simplexml
...
Co-authored-by: Thomas Weinert <thomas@weinert.info>
2020-07-27 21:42:33 +02:00
Max Semenik
2b5de6f839
Remove proto comments from C files
...
Closes GH-5758
2020-07-06 21:13:34 +02:00
Nikita Popov
312201dce4
Add get_gc handle for object iterators
...
Optional handler with the same semantics as the object handler.
2020-07-01 15:17:22 +02:00
Nikita Popov
4730b06f1d
Make SimpleXMLElement a RecursiveIterator
...
Context: https://externals.io/message/108789
This essentially moves the functionality of SimpleXMLIterator into
SimpleXMLElement, and makes SimpleXMLIterator a no-op extension.
Ideally SimpleXMLElement would be an IteratorAggregate, whose
getIterator() method returns SimpleXMLIterator. However, because
SimpleXMLIterator extends SimpleXMLElement (and code depends on
this in non-trivial ways), this is not possible.
The only way to not keep SimpleXMLElement as a magic Traversable
(that implements neither Iterator nor IteratorAggregate) is to
move the SimpleXMLIterator functionality into it.
Closes GH-5234.
2020-06-24 15:09:21 +02:00
Nikita Popov
c9b9f525a9
Include stub hash in generated arginfo files
...
The hash is used to check whether the arginfo file needs to be
regenerated. PHP-Parser will only be downloaded if this is actually
necessary.
This ensures that release artifacts will never try to regenerate
stubs and thus fetch PHP-Parser, as long as you do not modify any
files.
Closes GH-5739.
2020-06-24 09:55:19 +02:00
Christoph M. Becker
3a0bdb720a
Fix #63575 : Root elements are not properly cloned
...
Cloning of root elements has to preserve that property, so they require
some special treatment.
2020-06-17 16:48:50 +02:00
Nikita Popov
15846ff115
Add ZVAL_OBJ_COPY macro
...
For the common ZVAL_OBJ + GC_ADDREF pattern.
This mirrors the existing ZVAL_STR_COPY API.
2020-06-17 16:36:56 +02:00
twosee
1b85e749c7
Fix warning of strict-prototypes
...
Closes GH-5673.
2020-06-07 10:36:50 +02:00
Tyson Andre
32a1ebbd43
Clean up calls to extension_loaded('json') in tests
...
These are no longer needed after https://wiki.php.net/rfc/always_enable_json
Closes GH-5637
2020-05-28 15:07:47 -04:00
George Peter Banyard
f0794c7719
Fix [-Wundef] warning in SimpleXML extension
2020-05-20 16:29:52 +02:00
Christoph M. Becker
1d20443679
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79528 : Different object of the same xml between 7.4.5 and 7.4.4
2020-05-01 12:42:09 +02:00
Christoph M. Becker
9b9252c667
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #79528 : Different object of the same xml between 7.4.5 and 7.4.4
2020-05-01 12:40:37 +02:00
Christoph M. Becker
54148fd686
Fix #79528 : Different object of the same xml between 7.4.5 and 7.4.4
...
Revert "Fix #61597 : SXE properties may lack attributes and content"
This reverts commit 7c081db885
.
2020-05-01 12:37:39 +02:00
Máté Kocsis
4815be44db
Generate function entries from stubs
...
Converts ext/pcntl, ext/simplexml, ext/snmp, ext/soap, ext/sqlite3.
Closes GH-5421
2020-04-20 10:38:41 +02:00
Máté Kocsis
e088836bbc
Fix nullable types in PHPDoc
2020-04-12 00:25:33 +02:00
Máté Kocsis
3709e74b5e
Store default parameter values of internal functions in arg info
...
Closes GH-5353. From now on, PHP will have reflection information
about default values of parameters of internal functions.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
2020-04-08 18:37:51 +02:00
Máté Kocsis
36935e42ea
Improve undefined variable error messages
...
Closes GH-5312
2020-03-31 13:02:32 +02:00
Nikita Popov
6bf483a94a
Clarify SimpleXML comparison logic
2020-03-31 12:48:57 +02:00
Nikita Popov
fb5bfcb75b
Add a ZEND_UNCOMPARABLE value
...
To explicitly indicate that objects are uncomparable. For now
this has no functional difference from the usual 1 return value,
but makes intent clearer.
2020-03-31 12:36:48 +02:00
Máté Kocsis
01b266aac4
Improve error messages of various extensions
...
Closes GH-5278
2020-03-23 18:59:04 +01:00
Nikita Popov
df79277de3
Revert "Fetch for read in nested property assignments"
...
This reverts commit bb43a3822e
.
After thinking about this a bit more, this is now going to be
a complete solution for the "readonly properties" case, for example:
unset($foo->readOnly->bar);
should also be legal and
$foo->readOnly['bar'] = 42;
should also be legal if $foo->readOnly is not an array but an
ArrayAccess object.
I think it may be better to distinguish better on the BP_VAR flag
level. Reverting for now.
2020-03-18 14:54:43 +01:00
Nikita Popov
bb43a3822e
Fetch for read in nested property assignments
...
$a->b->c = 'd';
is now compiled the same way as
$b = $a->b;
$b->c = 'd';
That is, we perform a read fetch on $a->b, rather than a write
fetch.
This is possible, because PHP 8 removed auto-vivification support
for objects, so $a->b->c = 'd' may no longer modify $a->b proper
(i.e. not counting interior mutability of the object).
Closes GH-5250.
2020-03-18 12:08:06 +01:00
Christoph M. Becker
208e348982
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #61597 : SXE properties may lack attributes and content
2020-03-12 10:57:14 +01:00
Christoph M. Becker
2b56735ea0
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #61597 : SXE properties may lack attributes and content
2020-03-12 10:56:13 +01:00
Christoph M. Becker
7c081db885
Fix #61597 : SXE properties may lack attributes and content
...
We must not treat a node as string if it has attributes, unless it is
an entity declaration which is always treated as string by simplexml.
2020-03-12 10:52:28 +01:00
Máté Kocsis
f44dd16b7a
Improve error message of foreach
...
Closes GH-5240
2020-03-09 11:29:40 +01:00
Nicolas Grekas
9e775db025
Define Stringable with __toString():string method
2020-03-02 15:25:32 +01:00
Máté Kocsis
4f89211810
Remove the deprecated reflection export methods
...
Closes GH-5188
2020-02-19 13:19:37 +01:00
Máté Kocsis
ac0853eb26
Make type error messages more consistent
...
Closes GH-5092
2020-02-17 14:22:17 +01:00