@@ -853,7 +853,7 @@ PHP_METHOD(RedisArray, select)
853
853
/* MGET will distribute the call to several nodes and regroup the values. */
854
854
PHP_METHOD (RedisArray , mget )
855
855
{
856
- zval * object , * z_keys , z_fun , z_argarray , * data , z_ret , * z_cur , z_tmp_array , * z_tmp ;
856
+ zval * object , * z_keys , z_argarray , * data , z_ret , * z_cur , z_tmp_array , * z_tmp ;
857
857
int i , j , n ;
858
858
RedisArray * ra ;
859
859
int * pos , argc , * argc_each ;
@@ -872,8 +872,6 @@ PHP_METHOD(RedisArray, mget)
872
872
RETURN_FALSE ;
873
873
}
874
874
875
- /* prepare call */
876
- ZVAL_STRINGL (& z_fun , "MGET" , 4 );
877
875
878
876
/* init data structures */
879
877
h_keys = Z_ARRVAL_P (z_keys );
@@ -940,8 +938,12 @@ PHP_METHOD(RedisArray, mget)
940
938
add_next_index_zval (& z_argarray , z_tmp );
941
939
}
942
940
941
+ zval z_fun ;
942
+ /* prepare call */
943
+ ZVAL_STRINGL (& z_fun , "MGET" , 4 );
943
944
/* call MGET on the node */
944
945
call_user_function (& redis_ce -> function_table , & ra -> redis [n ], & z_fun , & z_ret , 1 , & z_argarray );
946
+ zval_dtor (& z_fun );
945
947
946
948
/* cleanup args array */
947
949
zval_dtor (& z_argarray );
@@ -951,7 +953,6 @@ PHP_METHOD(RedisArray, mget)
951
953
/* cleanup */
952
954
zval_dtor (& z_ret );
953
955
zval_dtor (& z_tmp_array );
954
- zval_dtor (& z_fun );
955
956
efree (argv );
956
957
efree (pos );
957
958
efree (argc_each );
@@ -994,7 +995,6 @@ PHP_METHOD(RedisArray, mget)
994
995
995
996
/* cleanup */
996
997
zval_dtor (& z_tmp_array );
997
- zval_dtor (& z_fun );
998
998
efree (argv );
999
999
efree (pos );
1000
1000
efree (argc_each );
@@ -1004,7 +1004,7 @@ PHP_METHOD(RedisArray, mget)
1004
1004
/* MSET will distribute the call to several nodes and regroup the values. */
1005
1005
PHP_METHOD (RedisArray , mset )
1006
1006
{
1007
- zval * object , * z_keys , z_fun , z_argarray , * data , z_ret , * * argv ;
1007
+ zval * object , * z_keys , z_argarray , * data , z_ret , * * argv ;
1008
1008
int i , n ;
1009
1009
RedisArray * ra ;
1010
1010
int * pos , argc , * argc_each ;
@@ -1060,8 +1060,6 @@ PHP_METHOD(RedisArray, mset)
1060
1060
} ZEND_HASH_FOREACH_END ();
1061
1061
1062
1062
1063
- /* prepare call */
1064
- ZVAL_STRINGL (& z_fun , "MSET" , 4 );
1065
1063
/* calls */
1066
1064
for (n = 0 ; n < ra -> count ; ++ n ) { /* for each node */
1067
1065
/* We don't even need to make a call to this node if no keys go there */
@@ -1092,8 +1090,12 @@ PHP_METHOD(RedisArray, mset)
1092
1090
ra_index_multi (& ra -> redis [n ], MULTI TSRMLS_CC );
1093
1091
}
1094
1092
1093
+ zval z_fun ;
1094
+ /* prepare call */
1095
+ ZVAL_STRINGL (& z_fun , "MSET" , 4 );
1095
1096
/* call */
1096
1097
call_user_function (& redis_ce -> function_table , & ra -> redis [n ], & z_fun , & z_ret , 1 , & z_argarray );
1098
+ zval_dtor (& z_fun );
1097
1099
zval_dtor (& z_ret );
1098
1100
1099
1101
if (ra -> index ) {
@@ -1102,7 +1104,6 @@ PHP_METHOD(RedisArray, mset)
1102
1104
}
1103
1105
zval_dtor (& z_argarray );
1104
1106
}
1105
- zval_dtor (& z_fun );
1106
1107
1107
1108
/* Free any keys that we needed to allocate memory for, because they weren't strings */
1108
1109
for (i = 0 ; i < argc ; i ++ ) {
0 commit comments