Пример #1
0
ZEND_API int zend_multibyte_set_script_encoding_by_string(const char *new_value, size_t new_value_length)
{
	const zend_encoding **list = 0;
	size_t size = 0;

	if (!new_value) {
		zend_multibyte_set_script_encoding(NULL, 0);
		return SUCCESS;
	}

	if (FAILURE == zend_multibyte_parse_encoding_list(new_value, new_value_length, &list, &size, 1)) {
		return FAILURE;
	}

	if (size == 0) {
		pefree((void*)list, 1);
		return FAILURE;
	}

	if (FAILURE == zend_multibyte_set_script_encoding(list, size)) {
		return FAILURE;
	}

	return SUCCESS;
}
Пример #2
0
ZEND_API int zend_multibyte_set_script_encoding(char *encoding_list, int encoding_list_size TSRMLS_DC)
{
	if (CG(script_encoding_list)) {
		efree(CG(script_encoding_list));
		CG(script_encoding_list) = NULL;
	}
	CG(script_encoding_list_size) = 0;

	if (!encoding_list) {
		return 0;
	}

	zend_multibyte_parse_encoding_list(encoding_list, encoding_list_size, &(CG(script_encoding_list)), &(CG(script_encoding_list_size)));

	return 0;
}