Skip to content

Commit fb66db3

Browse files
committed
ext/mbstring: use new ini API and remove unnecessary casts
1 parent 7f382d2 commit fb66db3

File tree

1 file changed

+25
-31
lines changed

1 file changed

+25
-31
lines changed

ext/mbstring/mbstring.c

Lines changed: 25 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1216,17 +1216,17 @@ PHP_FUNCTION(mb_language)
12161216
ZEND_PARSE_PARAMETERS_END();
12171217

12181218
if (name == NULL) {
1219-
RETVAL_STRING((char *)mbfl_no_language2name(MBSTRG(language)));
1219+
RETVAL_STRING(mbfl_no_language2name(MBSTRG(language)));
12201220
} else {
1221-
zend_string *ini_name = ZSTR_INIT_LITERAL("mbstring.language", 0);
1221+
zend_string *ini_name = ZSTR_INIT_LITERAL("mbstring.language", false);
12221222
if (FAILURE == zend_alter_ini_entry(ini_name, name, PHP_INI_USER, PHP_INI_STAGE_RUNTIME)) {
12231223
zend_argument_value_error(1, "must be a valid language, \"%s\" given", ZSTR_VAL(name));
1224-
zend_string_release_ex(ini_name, 0);
1224+
zend_string_release_ex(ini_name, false);
12251225
RETURN_THROWS();
12261226
}
12271227
// TODO Make return void
12281228
RETVAL_TRUE;
1229-
zend_string_release_ex(ini_name, 0);
1229+
zend_string_release_ex(ini_name, false);
12301230
}
12311231
}
12321232
/* }}} */
@@ -1509,7 +1509,7 @@ PHP_FUNCTION(mb_preferred_mime_name)
15091509
php_error_docref(NULL, E_WARNING, "No MIME preferred name corresponding to \"%s\"", name);
15101510
RETVAL_FALSE;
15111511
} else {
1512-
RETVAL_STRING((char *)preferred_name);
1512+
RETVAL_STRING(preferred_name);
15131513
}
15141514
}
15151515
/* }}} */
@@ -3517,7 +3517,7 @@ PHP_FUNCTION(mb_detect_encoding)
35173517
RETURN_FALSE;
35183518
}
35193519

3520-
RETVAL_STRING((char *)ret->name);
3520+
RETVAL_STRING(ret->name);
35213521
}
35223522
/* }}} */
35233523

@@ -3563,7 +3563,7 @@ PHP_FUNCTION(mb_encoding_aliases)
35633563
array_init(return_value);
35643564
if (encoding->aliases != NULL) {
35653565
for (const char **alias = encoding->aliases; *alias; ++alias) {
3566-
add_next_index_string(return_value, (char *)*alias);
3566+
add_next_index_string(return_value, *alias);
35673567
}
35683568
}
35693569
}
@@ -4768,7 +4768,7 @@ PHP_FUNCTION(mb_send_mail)
47684768

47694769
str_headers = smart_str_extract(&str);
47704770

4771-
zend_string *force_extra_parameters = zend_ini_str_ex("mail.force_extra_parameters", strlen("mail.force_extra_parameters"), false, NULL);
4771+
zend_string *force_extra_parameters = zend_ini_str_literal("mail.force_extra_parameters");
47724772
if (force_extra_parameters) {
47734773
extra_cmd = php_escape_shell_cmd(force_extra_parameters);
47744774
} else if (extra_cmd) {
@@ -4804,7 +4804,7 @@ PHP_FUNCTION(mb_get_info)
48044804
{
48054805
zend_string *type = NULL;
48064806
size_t n;
4807-
char *name;
4807+
const char *name;
48084808
zval row;
48094809
const mbfl_encoding **entry;
48104810
const mbfl_language *lang = mbfl_no2language(MBSTRG(language));
@@ -4819,26 +4819,26 @@ PHP_FUNCTION(mb_get_info)
48194819
if (!type || zend_string_equals_literal_ci(type, "all")) {
48204820
array_init(return_value);
48214821
if (MBSTRG(current_internal_encoding)) {
4822-
add_assoc_string(return_value, "internal_encoding", (char *)MBSTRG(current_internal_encoding)->name);
4822+
add_assoc_string(return_value, "internal_encoding", MBSTRG(current_internal_encoding)->name);
48234823
}
48244824
if (MBSTRG(http_input_identify)) {
4825-
add_assoc_string(return_value, "http_input", (char *)MBSTRG(http_input_identify)->name);
4825+
add_assoc_string(return_value, "http_input", MBSTRG(http_input_identify)->name);
48264826
}
48274827
if (MBSTRG(current_http_output_encoding)) {
4828-
add_assoc_string(return_value, "http_output", (char *)MBSTRG(current_http_output_encoding)->name);
4828+
add_assoc_string(return_value, "http_output", MBSTRG(current_http_output_encoding)->name);
48294829
}
48304830

48314831
add_assoc_str(return_value, "http_output_conv_mimetypes",
4832-
zend_ini_str("mbstring.http_output_conv_mimetypes", sizeof("mbstring.http_output_conv_mimetypes") - 1, 0)
4832+
zend_string_copy(zend_ini_str_literal("mbstring.http_output_conv_mimetypes"))
48334833
);
48344834

4835-
name = (char *)mbfl_no_encoding2name(lang->mail_charset);
4835+
name = mbfl_no_encoding2name(lang->mail_charset);
48364836
add_assoc_string(return_value, "mail_charset", name);
48374837

4838-
name = (char *)mbfl_no_encoding2name(lang->mail_header_encoding);
4838+
name = mbfl_no_encoding2name(lang->mail_header_encoding);
48394839
add_assoc_string(return_value, "mail_header_encoding", name);
48404840

4841-
name = (char *)mbfl_no_encoding2name(lang->mail_body_encoding);
4841+
name = mbfl_no_encoding2name(lang->mail_body_encoding);
48424842
add_assoc_string(return_value, "mail_body_encoding", name);
48434843

48444844
add_assoc_long(return_value, "illegal_chars", MBSTRG(illegalchars));
@@ -4849,7 +4849,7 @@ PHP_FUNCTION(mb_get_info)
48494849
add_assoc_string(return_value, "encoding_translation", "Off");
48504850
}
48514851

4852-
name = (char *)mbfl_no_language2name(MBSTRG(language));
4852+
name = mbfl_no_language2name(MBSTRG(language));
48534853
add_assoc_string(return_value, "language", name);
48544854

48554855
// TODO Seems to always have one entry at least?
@@ -4880,31 +4880,25 @@ PHP_FUNCTION(mb_get_info)
48804880
}
48814881
} else if (zend_string_equals_literal_ci(type, "internal_encoding")) {
48824882
ZEND_ASSERT(MBSTRG(current_internal_encoding));
4883-
RETURN_STRING((char *)MBSTRG(current_internal_encoding)->name);
4883+
RETURN_STRING(MBSTRG(current_internal_encoding)->name);
48844884
} else if (zend_string_equals_literal_ci(type, "http_input")) {
48854885
if (MBSTRG(http_input_identify)) {
4886-
RETURN_STRING((char *)MBSTRG(http_input_identify)->name);
4886+
RETURN_STRING(MBSTRG(http_input_identify)->name);
48874887
}
48884888
RETURN_NULL();
48894889
} else if (zend_string_equals_literal_ci(type, "http_output")) {
48904890
ZEND_ASSERT(MBSTRG(current_http_output_encoding));
4891-
RETURN_STRING((char *)MBSTRG(current_http_output_encoding)->name);
4891+
RETURN_STRING(MBSTRG(current_http_output_encoding)->name);
48924892
} else if (zend_string_equals_literal_ci(type, "http_output_conv_mimetypes")) {
4893-
RETURN_STR(
4894-
zend_ini_str(
4895-
"mbstring.http_output_conv_mimetypes",
4896-
sizeof("mbstring.http_output_conv_mimetypes") - 1,
4897-
false
4898-
)
4899-
);
4893+
RETURN_STR_COPY(zend_ini_str_literal("mbstring.http_output_conv_mimetypes"));
49004894
} else if (zend_string_equals_literal_ci(type, "mail_charset")) {
4901-
name = (char *)mbfl_no_encoding2name(lang->mail_charset);
4895+
name = mbfl_no_encoding2name(lang->mail_charset);
49024896
RETURN_STRING(name);
49034897
} else if (zend_string_equals_literal_ci(type, "mail_header_encoding")) {
4904-
name = (char *)mbfl_no_encoding2name(lang->mail_header_encoding);
4898+
name = mbfl_no_encoding2name(lang->mail_header_encoding);
49054899
RETURN_STRING(name);
49064900
} else if (zend_string_equals_literal_ci(type, "mail_body_encoding")) {
4907-
name = (char *)mbfl_no_encoding2name(lang->mail_body_encoding);
4901+
name = mbfl_no_encoding2name(lang->mail_body_encoding);
49084902
RETURN_STRING(name);
49094903
} else if (zend_string_equals_literal_ci(type, "illegal_chars")) {
49104904
RETURN_LONG(MBSTRG(illegalchars));
@@ -4915,7 +4909,7 @@ PHP_FUNCTION(mb_get_info)
49154909
RETURN_STRING("Off");
49164910
}
49174911
} else if (zend_string_equals_literal_ci(type, "language")) {
4918-
name = (char *)mbfl_no_language2name(MBSTRG(language));
4912+
name = mbfl_no_language2name(MBSTRG(language));
49194913
RETURN_STRING(name);
49204914
} else if (zend_string_equals_literal_ci(type, "detect_order")) {
49214915
// TODO Seems to always have one entry at least?

0 commit comments

Comments
 (0)