Skip to content
This repository was archived by the owner on Jul 24, 2019. It is now read-only.

Commit 04d6237

Browse files
committed
Fix for PHP-trunk (5.4)
1 parent 0a8c7fa commit 04d6237

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

library.c

+11-2
Original file line numberDiff line numberDiff line change
@@ -1092,7 +1092,11 @@ PHPAPI void redis_free_socket(RedisSock *redis_sock)
10921092

10931093
PHPAPI int
10941094
redis_serialize(RedisSock *redis_sock, zval *z, char **val, int *val_len TSRMLS_CC) {
1095+
#if ZEND_MODULE_API_NO >= 20100000
1096+
php_serialize_data_t ht;
1097+
#else
10951098
HashTable ht;
1099+
#endif
10961100
smart_str sstr = {0};
10971101
zval *z_copy;
10981102
size_t sz;
@@ -1133,11 +1137,17 @@ redis_serialize(RedisSock *redis_sock, zval *z, char **val, int *val_len TSRMLS_
11331137

11341138
case REDIS_SERIALIZER_PHP:
11351139

1140+
#if ZEND_MODULE_API_NO >= 20100000
1141+
#else
11361142
zend_hash_init(&ht, 10, NULL, NULL, 0);
1143+
#endif
11371144
php_var_serialize(&sstr, &z, &ht TSRMLS_CC);
11381145
*val = sstr.c;
11391146
*val_len = (int)sstr.len;
1147+
#if ZEND_MODULE_API_NO >= 20100000
1148+
#else
11401149
zend_hash_destroy(&ht);
1150+
#endif
11411151

11421152
return 1;
11431153

@@ -1166,8 +1176,7 @@ redis_unserialize(RedisSock *redis_sock, const char *val, int val_len, zval **re
11661176
if(!*return_value) {
11671177
MAKE_STD_ZVAL(*return_value);
11681178
}
1169-
var_hash.first = 0;
1170-
var_hash.first_dtor = 0;
1179+
memset(&var_hash, 0, sizeof(var_hash));
11711180
if(!php_var_unserialize(return_value, (const unsigned char**)&val,
11721181
(const unsigned char*)val + val_len, &var_hash TSRMLS_CC)) {
11731182
efree(*return_value);

0 commit comments

Comments
 (0)