@@ -111,25 +111,23 @@ ZEND_ATTRIBUTE_NONNULL static UriUriA *get_uri_for_writing(php_uri_parser_rfc398
111111 return & uriparser_uris -> uri ;
112112}
113113
114- ZEND_ATTRIBUTE_NONNULL void php_uri_parser_rfc3986_uri_type_read (void * uri , zval * retval )
114+ ZEND_ATTRIBUTE_NONNULL void php_uri_parser_rfc3986_uri_type_read (php_uri_parser_rfc3986_uris * uri , zval * retval )
115115{
116116 const UriUriA * uriparser_uri = get_uri_for_reading (uri , PHP_URI_COMPONENT_READ_MODE_RAW );
117117
118- if (has_text_range (& uriparser_uri -> scheme )) {
119- ZVAL_OBJ_COPY (retval , zend_enum_get_case_cstr (php_uri_ce_rfc3986_uri_type , "Uri" ));
120- return ;
121- }
122-
123- if (has_text_range (& uriparser_uri -> hostText )) {
124- ZVAL_OBJ_COPY (retval , zend_enum_get_case_cstr (php_uri_ce_rfc3986_uri_type , "NetworkPathReference" ));
125- return ;
126- }
118+ const char * type ;
127119
128- if (uriparser_uri -> absolutePath ) {
129- ZVAL_OBJ_COPY (retval , zend_enum_get_case_cstr (php_uri_ce_rfc3986_uri_type , "AbsolutePathReference" ));
120+ if (has_text_range (& uriparser_uri -> scheme )) {
121+ type = "Uri" ;
122+ } else if (has_text_range (& uriparser_uri -> hostText )) {
123+ type = "NetworkPathReference" ;
124+ } else if (uriparser_uri -> absolutePath ) {
125+ type = "AbsolutePathReference" ;
130126 } else {
131- ZVAL_OBJ_COPY ( retval , zend_enum_get_case_cstr ( php_uri_ce_rfc3986_uri_type , "RelativePathReference" )) ;
127+ type = "RelativePathReference" ;
132128 }
129+
130+ ZVAL_OBJ_COPY (retval , zend_enum_get_case_cstr (php_uri_ce_rfc3986_uri_type , type ));
133131}
134132
135133ZEND_ATTRIBUTE_NONNULL static zend_result php_uri_parser_rfc3986_scheme_read (void * uri , php_uri_component_read_mode read_mode , zval * retval )
0 commit comments