Skip to content

Commit 2f8d21c

Browse files
committed
Fixed #8 memory management improved
1 parent 6bdd92e commit 2f8d21c

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

library.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -628,10 +628,7 @@ redis_cmd_format_static(char **ret, char *keyword, char *format, ...)
628628
size_t buflen = 512;
629629
zend_string *dbl_str;
630630
int l = strlen(keyword);
631-
632-
633-
634-
631+
int ret_len;
635632

636633
va_start(ap, format);
637634

@@ -695,9 +692,12 @@ redis_cmd_format_static(char **ret, char *keyword, char *format, ...)
695692
}
696693
smart_str_0(&buf);
697694

698-
*ret = buf.s->val;
695+
*ret = estrdup(buf.s->val);
696+
ret_len = buf.s->len;
699697

700-
return buf.s->len;
698+
smart_str_free(&buf);
699+
700+
return ret_len;
701701
}
702702

703703
/**

redis_session.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -370,8 +370,8 @@ PS_READ_FUNC(redis)
370370
efree(cmd);
371371
return FAILURE;
372372
}
373-
// TODO: solve the issue
374-
//efree(cmd);
373+
374+
efree(cmd);
375375

376376
/* read response */
377377
if ((tmp_val = redis_sock_read(redis_sock, &temp_len TSRMLS_CC)) == NULL) {
@@ -409,8 +409,8 @@ PS_WRITE_FUNC(redis)
409409
efree(cmd);
410410
return FAILURE;
411411
}
412-
// TODO: remove
413-
// efree(cmd);
412+
413+
efree(cmd);
414414

415415
/* read response */
416416
if ((response = redis_sock_read(redis_sock, &response_len TSRMLS_CC)) == NULL) {

0 commit comments

Comments
 (0)