From 970e00aeebe62e386cc97314c206ff0545d3cdb6 Mon Sep 17 00:00:00 2001 From: Moriyoshi Koizumi Date: Mon, 4 Aug 2008 21:06:13 +0000 Subject: [PATCH] - MFH: More fixes for bug #45691 --- ext/mbstring/mbstring.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ext/mbstring/mbstring.c b/ext/mbstring/mbstring.c index fe1a383f929..d30e54a83f6 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)) {