[php-src] master: uri: Improve type safety for `php_uri_parser_rfc3986_userinfo_*()` (#20244)
Author: Tim Düsterhus (TimWolla)
Committer: GitHub (web-flow)
Pusher: TimWolla
Date: 2025-10-22T08:41:21+02:00
Commit: https://github.com/php/php-src/commit/25de02b81c5d127db837ec6146b74f5b7822e478
Raw diff: https://github.com/php/php-src/commit/25de02b81c5d127db837ec6146b74f5b7822e478.diff
uri: Improve type safety for php_uri_parser_rfc3986_userinfo_*()
(#20244)
The signature for these functions does not need to match a specific function
pointer signature, thus there is no need for a void*
to take the uri.
Changed paths:
M ext/uri/uri_parser_rfc3986.c
M ext/uri/uri_parser_rfc3986.h
Diff:
diff --git a/ext/uri/uri_parser_rfc3986.c b/ext/uri/uri_parser_rfc3986.c
index 30707fde1302..a24fb467bf34 100644
--- a/ext/uri/uri_parser_rfc3986.c
+++ b/ext/uri/uri_parser_rfc3986.c
@@ -149,7 +149,7 @@ static zend_result php_uri_parser_rfc3986_scheme_write(void *uri, zval *value, z
}
}
-ZEND_ATTRIBUTE_NONNULL zend_result php_uri_parser_rfc3986_userinfo_read(void *uri,
php_uri_component_read_mode read_mode, zval *retval)
+ZEND_ATTRIBUTE_NONNULL zend_result php_uri_parser_rfc3986_userinfo_read(php_uri_parser_rfc3986_uris
*uri, php_uri_component_read_mode read_mode, zval *retval)
{
const UriUriA *uriparser_uri = get_uri_for_reading(uri, read_mode);
@@ -162,7 +162,7 @@ ZEND_ATTRIBUTE_NONNULL zend_result php_uri_parser_rfc3986_userinfo_read(void *ur
return SUCCESS;
}
-zend_result php_uri_parser_rfc3986_userinfo_write(void *uri, zval *value, zval *errors)
+zend_result php_uri_parser_rfc3986_userinfo_write(php_uri_parser_rfc3986_uris *uri, zval *value,
zval *errors)
{
UriUriA *uriparser_uri = get_uri_for_writing(uri);
int result;
diff --git a/ext/uri/uri_parser_rfc3986.h b/ext/uri/uri_parser_rfc3986.h
index fbbfefb30af6..4d88478b6063 100644
--- a/ext/uri/uri_parser_rfc3986.h
+++ b/ext/uri/uri_parser_rfc3986.h
@@ -23,8 +23,8 @@ PHPAPI extern const php_uri_parser php_uri_parser_rfc3986;
typedef struct php_uri_parser_rfc3986_uris php_uri_parser_rfc3986_uris;
-zend_result php_uri_parser_rfc3986_userinfo_read(void *uri, php_uri_component_read_mode read_mode,
zval *retval);
-zend_result php_uri_parser_rfc3986_userinfo_write(void *uri, zval *value, zval *errors);
+zend_result php_uri_parser_rfc3986_userinfo_read(php_uri_parser_rfc3986_uris *uri,
php_uri_component_read_mode read_mode, zval *retval);
+zend_result php_uri_parser_rfc3986_userinfo_write(php_uri_parser_rfc3986_uris *uri, zval *value,
zval *errors);
php_uri_parser_rfc3986_uris *php_uri_parser_rfc3986_parse_ex(const char *uri_str, size_t
uri_str_len, const php_uri_parser_rfc3986_uris *uriparser_base_url, bool silent);
Thread (1 message)
- Tim Düsterhus via GitHub