summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2020-03-31 11:06:15 +0200
committerNikita Popov <nikita.ppv@gmail.com>2020-03-31 11:06:15 +0200
commit78d3af45294af06332d0d16541a33181bb3da952 (patch)
treea0e29963246d271ec4f5275b529af6ad349050d9
parent3ca08ee764a372f65a2469ca72270aef32249a5b (diff)
downloadphp-git-78d3af45294af06332d0d16541a33181bb3da952.tar.gz
Make sure php_get_internal_encoding() returns non-empty
Even if default_charset is set to "", we should still return "UTF-8" as the default value here. Setting default_charset to "" suppresses the header emission, but shouldn't change anything about our encoding defaults.
-rw-r--r--main/main.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/main/main.c b/main/main.c
index 8e41ec9f49..3a1e92ee08 100644
--- a/main/main.c
+++ b/main/main.c
@@ -562,28 +562,28 @@ static PHP_INI_DISP(display_errors_mode)
PHPAPI const char *php_get_internal_encoding() {
if (PG(internal_encoding) && PG(internal_encoding)[0]) {
return PG(internal_encoding);
- } else if (SG(default_charset)) {
+ } else if (SG(default_charset) && SG(default_charset)[0]) {
return SG(default_charset);
}
- return "";
+ return "UTF-8";
}
PHPAPI const char *php_get_input_encoding() {
if (PG(input_encoding) && PG(input_encoding)[0]) {
return PG(input_encoding);
- } else if (SG(default_charset)) {
+ } else if (SG(default_charset) && SG(default_charset)[0]) {
return SG(default_charset);
}
- return "";
+ return "UTF-8";
}
PHPAPI const char *php_get_output_encoding() {
if (PG(output_encoding) && PG(output_encoding)[0]) {
return PG(output_encoding);
- } else if (SG(default_charset)) {
+ } else if (SG(default_charset) && SG(default_charset)[0]) {
return SG(default_charset);
}
- return "";
+ return "UTF-8";
}
PHPAPI void (*php_internal_encoding_changed)(void) = NULL;