- if ((!(flags & ARRAY_JOIN_STRONLY)) || hash_key->nKeyLength) {
- if ((flags & ARRAY_JOIN_PRETTIFY) && hash_key->nKeyLength) {
- key = php_http_pretty_key(estrndup(hash_key->arKey, hash_key->nKeyLength - 1), hash_key->nKeyLength - 1, 1, 1);
- zend_hash_find(dst, key, hash_key->nKeyLength, (void *) &data);
+ if ((!(flags & ARRAY_JOIN_STRONLY)) || hash_key->key) {
+ if ((flags & ARRAY_JOIN_PRETTIFY) && hash_key->key) {
+ key = php_http_pretty_key(estrndup(hash_key->key->val, hash_key->key->len), hash_key->key->len, 1, 1);
+ data = zend_hash_str_find(dst, key, hash_key->key->len);
+ } else if (hash_key->key) {
+ data = zend_hash_find(dst, hash_key->key);