zend_string *key;
pcre_cache_entry *ret;
- if (locale_aware && BG(locale_string) &&
- (ZSTR_LEN(BG(locale_string)) != 1 && ZSTR_VAL(BG(locale_string))[0] != 'C')) {
+ if (locale_aware && BG(ctype_string) &&
+ (ZSTR_LEN(BG(ctype_string)) != 1 && ZSTR_VAL(BG(ctype_string))[0] != 'C')) {
key = zend_string_concat2(
- ZSTR_VAL(BG(locale_string)), ZSTR_LEN(BG(locale_string)),
+ ZSTR_VAL(BG(ctype_string)), ZSTR_LEN(BG(ctype_string)),
ZSTR_VAL(regex), ZSTR_LEN(regex));
} else {
key = regex;
}
if (key != regex) {
- tables = (uint8_t *)zend_hash_find_ptr(&char_tables, BG(locale_string));
+ tables = (uint8_t *)zend_hash_find_ptr(&char_tables, BG(ctype_string));
if (!tables) {
zend_string *_k;
tables = pcre2_maketables(gctx);
efree(pattern);
return NULL;
}
- _k = zend_string_init(ZSTR_VAL(BG(locale_string)), ZSTR_LEN(BG(locale_string)), 1);
+ _k = zend_string_init(ZSTR_VAL(BG(ctype_string)), ZSTR_LEN(BG(ctype_string)), 1);
GC_MAKE_PERSISTENT_LOCAL(_k);
zend_hash_add_ptr(&char_tables, _k, (void *)tables);
zend_string_release(_k);
BG(strtok_string) = NULL;
ZVAL_UNDEF(&BG(strtok_zval));
BG(strtok_last) = NULL;
- BG(locale_string) = NULL;
+ BG(ctype_string) = NULL;
BG(locale_changed) = 0;
BG(array_walk_fci) = empty_fcall_info;
BG(array_walk_fci_cache) = empty_fcall_info_cache;
if (BG(locale_changed)) {
setlocale(LC_ALL, "C");
zend_update_current_locale();
- if (BG(locale_string)) {
- zend_string_release_ex(BG(locale_string), 0);
- BG(locale_string) = NULL;
+ if (BG(ctype_string)) {
+ zend_string_release_ex(BG(ctype_string), 0);
+ BG(ctype_string) = NULL;
}
}
HashTable putenv_ht;
zval strtok_zval;
char *strtok_string;
- zend_string *locale_string; /* current LC_CTYPE locale (or NULL for 'C') */
+ zend_string *ctype_string; /* current LC_CTYPE locale (or NULL for 'C') */
zend_bool locale_changed; /* locale was changed and has to be restored */
char *strtok_last;
char strtok_table[256];
BG(locale_changed) = 1;
if (cat == LC_CTYPE || cat == LC_ALL) {
- if (BG(locale_string)) {
- zend_string_release_ex(BG(locale_string), 0);
+ if (BG(ctype_string)) {
+ zend_string_release_ex(BG(ctype_string), 0);
}
if (len == ZSTR_LEN(loc) && !memcmp(ZSTR_VAL(loc), retval, len)) {
- BG(locale_string) = zend_string_copy(loc);
- RETURN_STR(BG(locale_string));
+ BG(ctype_string) = zend_string_copy(loc);
+ RETURN_STR(BG(ctype_string));
} else {
- BG(locale_string) = zend_string_init(retval, len, 0);
+ BG(ctype_string) = zend_string_init(retval, len, 0);
zend_string_release_ex(loc, 0);
- RETURN_STR_COPY(BG(locale_string));
+ RETURN_STR_COPY(BG(ctype_string));
}
} else if (len == ZSTR_LEN(loc) && !memcmp(ZSTR_VAL(loc), retval, len)) {
RETURN_STR(loc);