cvs: php4 /ext/mbstring mbstring.c

From: Date: Sun, 04 Aug 2002 14:10:59 +0000
Subject: cvs: php4 /ext/mbstring mbstring.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-13108@lists.php.net to get a copy of this message
helly Sun Aug 4 10:10:59 2002 EDT Modified files: /php4/ext/mbstring mbstring.c Log: -Allow double quotes for encoding lists (if used in ini for example) -New parameter 'L' for mb_http_input() to retieve input encoding as comma separated string. @New parameter 'L' for mb_http_input() to retrieve input encoding as comma separated string. (marcus) Index: php4/ext/mbstring/mbstring.c diff -u php4/ext/mbstring/mbstring.c:1.87 php4/ext/mbstring/mbstring.c:1.88 --- php4/ext/mbstring/mbstring.c:1.87 Sat Aug 3 05:48:34 2002 +++ php4/ext/mbstring/mbstring.c Sun Aug 4 10:10:58 2002 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: mbstring.c,v 1.87 2002/08/03 09:48:34 andi Exp $ */ +/* $Id: mbstring.c,v 1.88 2002/08/04 14:10:58 helly Exp $ */ /* * PHP4 Multibyte String module "mbstring" (currently only for Japanese) @@ -288,7 +288,12 @@ return 0; } else { /* copy the value string for work */ - tmpstr = (char *)estrndup(value, value_length); + if (value[0]=='"' && value[value_length-1]=='"' && value_length>2) { + tmpstr = (char *)estrndup(value+1, value_length-2); + value_length -= 2; + } + else + tmpstr = (char *)estrndup(value, value_length); if (tmpstr == NULL) { return 0; } @@ -644,7 +649,7 @@ PHP_INI_ENTRY("mbstring.substitute_character", NULL, PHP_INI_ALL, OnUpdate_mbstring_substitute_character) STD_PHP_INI_ENTRY("mbstring.func_overload", "0", PHP_INI_SYSTEM, OnUpdateInt, func_overload, zend_mbstring_globals, mbstring_globals) #if !defined(COMPILE_DL_MBSTRING) - STD_PHP_INI_BOOLEAN("mbstring.encoding_translation", "0", PHP_INI_SYSTEM, OnUpdateBool, encoding_translation, zend_mbstring_globals, mbstring_globals) + STD_PHP_INI_BOOLEAN("mbstring.encoding_translation", "0", PHP_INI_ALL, OnUpdateBool, encoding_translation, zend_mbstring_globals, mbstring_globals) #endif /* !defined(COMPILE_DL_MBSTRING) */ PHP_INI_END() @@ -995,7 +1000,7 @@ { pval **arg1; int result=0, retname, n, *entry; - char *name; + char *name, *list, *temp; retname = 1; if (ZEND_NUM_ARGS() == 0) { @@ -1034,6 +1039,32 @@ entry++; n--; } + retname = 0; + break; + case 'L': + case 'l': + entry = MBSTRG(http_input_list); + n = MBSTRG(http_input_list_size); + list = NULL; + while (n > 0) { + name = (char *)mbfl_no_encoding2name(*entry); + if (name) { + if (list) { + temp = list; + spprintf(&list, 0, "%s,%s", temp, name); + efree(temp); + if (!list) + break; + } else { + list = estrdup(name); + } + } + entry++; + n--; + } + if (!list) + RETURN_FALSE; + RETVAL_STRING(list, 0); retname = 0; break; default:

« previous php.cvs (#13108) next »