From 83d450c78de128da32048ef369d9769fa73be9da Mon Sep 17 00:00:00 2001 From: Xinchen Hui Date: Wed, 18 Jun 2014 14:42:46 +0800 Subject: Fixed segfault of stream handling --- ext/mysqlnd/mysqlnd_wireprotocol.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'ext/mysqlnd/mysqlnd_wireprotocol.c') diff --git a/ext/mysqlnd/mysqlnd_wireprotocol.c b/ext/mysqlnd/mysqlnd_wireprotocol.c index e8237050dd..2eeebeed22 100644 --- a/ext/mysqlnd/mysqlnd_wireprotocol.c +++ b/ext/mysqlnd/mysqlnd_wireprotocol.c @@ -1760,24 +1760,30 @@ php_mysqlnd_rowp_read_text_protocol_aux(MYSQLND_MEMORY_POOL_CHUNK * row_buffer, bit_area += 1 + sprintf((char *)start, "%ld", Z_LVAL_P(current_field)); //???? ZVAL_STRINGL(current_field, (char *) start, bit_area - start - 1, copy_data); ZVAL_STRINGL(current_field, (char *) start, bit_area - start - 1); + /* if (!copy_data) { efree(start); } + */ } else if (Z_TYPE_P(current_field) == IS_STRING){ memcpy(bit_area, Z_STRVAL_P(current_field), Z_STRLEN_P(current_field)); bit_area += Z_STRLEN_P(current_field); *bit_area++ = '\0'; zval_dtor(current_field); ZVAL_STRINGL(current_field, (char *) start, bit_area - start - 1); + /* if (!copy_data) { efree(start); } + */ } } else { ZVAL_STRINGL(current_field, (char *)p, len); + /* if (!copy_data) { efree(p); } + */ } p += len; last_field_was_string = TRUE; -- cgit v1.2.1