summaryrefslogtreecommitdiff
path: root/ext/xml/xml.c
diff options
context:
space:
mode:
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 */
}
/* }}} */