summaryrefslogtreecommitdiff
path: root/ext/xml/xml.c
diff options
context:
space:
mode:
authorMáté Kocsis <kocsismate@woohoolabs.com>2020-08-03 00:55:02 +0200
committerMáté Kocsis <kocsismate@woohoolabs.com>2020-08-03 20:09:28 +0200
commit4c89ed61fba666290646af4745435d503352c9d2 (patch)
treeed93f07a394a7359fc2e693e8ca8921b9b0ac612 /ext/xml/xml.c
parent0c238ede019f6ffbe7c996ec1695a747f4bca966 (diff)
downloadphp-git-4c89ed61fba666290646af4745435d503352c9d2.tar.gz
Promote warnings to exceptions in ext/gettext, ext/sysvmsg and ext/xml
Closes GH-5926
Diffstat (limited to 'ext/xml/xml.c')
-rw-r--r--ext/xml/xml.c19
1 files changed, 8 insertions, 11 deletions
diff --git a/ext/xml/xml.c b/ext/xml/xml.c
index c5d3f71079..c670c2ef52 100644
--- a/ext/xml/xml.c
+++ b/ext/xml/xml.c
@@ -1029,8 +1029,8 @@ static void php_xml_parser_create_impl(INTERNAL_FUNCTION_PARAMETERS, int ns_supp
} else if (strcasecmp(encoding_param, "US-ASCII") == 0) {
encoding = (XML_Char*)"US-ASCII";
} else {
- php_error_docref(NULL, E_WARNING, "Unsupported source encoding \"%s\"", encoding_param);
- RETURN_FALSE;
+ zend_argument_value_error(1, "is not a supported source encoding");
+ RETURN_THROWS();
}
} else {
encoding = XML(default_encoding);
@@ -1442,15 +1442,15 @@ PHP_FUNCTION(xml_parser_set_option)
enc = xml_get_encoding((XML_Char*)Z_STRVAL_P(val));
if (enc == NULL) {
- php_error_docref(NULL, E_WARNING, "Unsupported target encoding \"%s\"", Z_STRVAL_P(val));
- RETURN_FALSE;
+ zend_argument_value_error(3, "is not a supported target encoding");
+ RETURN_THROWS();
}
parser->target_encoding = enc->name;
break;
}
default:
- php_error_docref(NULL, E_WARNING, "Unknown option");
- RETURN_FALSE;
+ zend_argument_value_error(2, "must be a PHP_XML_OPTION_* constant");
+ RETURN_THROWS();
break;
}
RETVAL_TRUE;
@@ -1483,12 +1483,9 @@ PHP_FUNCTION(xml_parser_get_option)
RETURN_STRING((char *)parser->target_encoding);
break;
default:
- php_error_docref(NULL, E_WARNING, "Unknown option");
- RETURN_FALSE;
- break;
+ zend_argument_value_error(2, "must be a PHP_XML_OPTION_* constant");
+ RETURN_THROWS();
}
-
- RETVAL_FALSE; /* never reached */
}
/* }}} */