1
0
mirror of https://github.com/php/php-src.git synced 2026-03-24 00:02:20 +01:00

Merge branch 'PHP-8.5'

* PHP-8.5:
  Fix arginfo/zpp violations when LIBXML_SCHEMAS_ENABLED is not available
This commit is contained in:
Niels Dossche
2025-10-11 23:57:49 +02:00

View File

@@ -517,12 +517,7 @@ static void php_xmlreader_no_arg_string(INTERNAL_FUNCTION_PARAMETERS, xmlreader_
/* {{{ php_xmlreader_set_relaxng_schema */
static void php_xmlreader_set_relaxng_schema(INTERNAL_FUNCTION_PARAMETERS, int type) {
#ifdef LIBXML_SCHEMAS_ENABLED
zval *id;
size_t source_len = 0;
int retval = -1;
xmlreader_object *intern;
xmlRelaxNGPtr schema = NULL;
char *source;
if (zend_parse_parameters(ZEND_NUM_ARGS(), "p!", &source, &source_len) == FAILURE) {
@@ -533,11 +528,13 @@ static void php_xmlreader_set_relaxng_schema(INTERNAL_FUNCTION_PARAMETERS, int t
zend_argument_must_not_be_empty_error(1);
RETURN_THROWS();
}
id = ZEND_THIS;
intern = Z_XMLREADER_P(id);
#ifdef LIBXML_SCHEMAS_ENABLED
xmlreader_object *intern = Z_XMLREADER_P(ZEND_THIS);
if (intern->ptr) {
int retval = -1;
xmlRelaxNGPtr schema = NULL;
if (source) {
schema = _xmlreader_get_relaxNG(source, source_len, type, NULL, NULL);
if (schema) {
@@ -1079,11 +1076,7 @@ PHP_METHOD(XMLReader, readString)
/* {{{ Use W3C XSD schema to validate the document as it is processed. Activation is only possible before the first Read(). */
PHP_METHOD(XMLReader, setSchema)
{
#ifdef LIBXML_SCHEMAS_ENABLED
zval *id;
size_t source_len = 0;
int retval = -1;
xmlreader_object *intern;
char *source;
if (zend_parse_parameters(ZEND_NUM_ARGS(), "p!", &source, &source_len) == FAILURE) {
@@ -1094,13 +1087,12 @@ PHP_METHOD(XMLReader, setSchema)
zend_argument_must_not_be_empty_error(1);
RETURN_THROWS();
}
id = ZEND_THIS;
intern = Z_XMLREADER_P(id);
#ifdef LIBXML_SCHEMAS_ENABLED
xmlreader_object *intern = Z_XMLREADER_P(ZEND_THIS);
if (intern && intern->ptr) {
PHP_LIBXML_SANITIZE_GLOBALS(schema);
retval = xmlTextReaderSchemaValidate(intern->ptr, source);
int retval = xmlTextReaderSchemaValidate(intern->ptr, source);
PHP_LIBXML_RESTORE_GLOBALS(schema);
if (retval == 0) {