diff options
| -rw-r--r-- | ext/mbstring/mbstring.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/ext/mbstring/mbstring.c b/ext/mbstring/mbstring.c index fe1a383f92..d30e54a83f 100644 --- a/ext/mbstring/mbstring.c +++ b/ext/mbstring/mbstring.c @@ -1394,6 +1394,11 @@ static PHP_INI_MH(OnUpdate_mbstring_substitute_character) } } } + } else { + MBSTRG(filter_illegal_mode) = MBFL_OUTPUTFILTER_ILLEGAL_MODE_CHAR; + MBSTRG(current_filter_illegal_mode) = MBFL_OUTPUTFILTER_ILLEGAL_MODE_CHAR; + MBSTRG(filter_illegal_substchar) = 0x3f; /* '?' */ + MBSTRG(current_filter_illegal_substchar) = 0x3f; /* '?' */ } return SUCCESS; @@ -1429,7 +1434,8 @@ static PHP_INI_MH(OnUpdate_mbstring_http_output_conv_mimetypes) void *re = NULL; if (!new_value) { - return SUCCESS; + new_value = entry->orig_value; + new_value_length = entry->orig_value_length; } php_trim(new_value, new_value_length, NULL, 0, &tmp, 3 TSRMLS_CC); @@ -1604,9 +1610,7 @@ PHP_RINIT_FUNCTION(mbstring) MBSTRG(current_filter_illegal_mode) = MBSTRG(filter_illegal_mode); MBSTRG(current_filter_illegal_substchar) = MBSTRG(filter_illegal_substchar); - if (!MBSTRG(encoding_translation)) { - MBSTRG(illegalchars) = 0; - } + MBSTRG(illegalchars) = 0; n = 0; if (MBSTRG(detect_order_list)) { |
