cvs: php-src /ext/pdo_pgsql pgsql_driver.c pgsql_statement.c
| From: | Ilia Alshanetsky | Date: | Mon, 08 May 2006 14:33:23 +0000 |
| Subject: | cvs: php-src /ext/pdo_pgsql pgsql_driver.c pgsql_statement.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-38076@lists.php.net to get a copy of this message | ||
iliaa Mon May 8 14:33:23 2006 UTC
Modified files:
/php-src/ext/pdo_pgsql pgsql_driver.c pgsql_statement.c
Log:
MFB: Fixed memory leaks when working with cursors in PDO PostgreSQL driver.
http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo_pgsql/pgsql_driver.c?r1=1.58&r2=1.59&diff_format=u
Index: php-src/ext/pdo_pgsql/pgsql_driver.c
diff -u php-src/ext/pdo_pgsql/pgsql_driver.c:1.58 php-src/ext/pdo_pgsql/pgsql_driver.c:1.59
--- php-src/ext/pdo_pgsql/pgsql_driver.c:1.58 Tue Mar 14 11:14:05 2006
+++ php-src/ext/pdo_pgsql/pgsql_driver.c Mon May 8 14:33:23 2006
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pgsql_driver.c,v 1.58 2006/03/14 11:14:05 edink Exp $ */
+/* $Id: pgsql_driver.c,v 1.59 2006/05/08 14:33:23 iliaa Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -155,6 +155,9 @@
PDO_CURSOR_FWDONLY TSRMLS_CC) == PDO_CURSOR_SCROLL;
if (scrollable) {
+ if (S->cursor_name) {
+ efree(S->cursor_name);
+ }
/* TODO: check how scrollable cursors related to prepared statements */
spprintf(&S->cursor_name, 0, "pdo_pgsql_cursor_%08x", (unsigned int) stmt);
}
http://cvs.php.net/viewcvs.cgi/php-src/ext/pdo_pgsql/pgsql_statement.c?r1=1.36&r2=1.37&diff_format=u
Index: php-src/ext/pdo_pgsql/pgsql_statement.c
diff -u php-src/ext/pdo_pgsql/pgsql_statement.c:1.36 php-src/ext/pdo_pgsql/pgsql_statement.c:1.37
--- php-src/ext/pdo_pgsql/pgsql_statement.c:1.36 Fri Mar 17 22:17:15 2006
+++ php-src/ext/pdo_pgsql/pgsql_statement.c Mon May 8 14:33:23 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pgsql_statement.c,v 1.36 2006/03/17 22:17:15 tony2001 Exp $ */
+/* $Id: pgsql_statement.c,v 1.37 2006/05/08 14:33:23 iliaa Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -241,6 +241,7 @@
spprintf(&q, 0, "FETCH %s %ld FROM %s", ori_str, offset, S->cursor_name);
S->result = PQexec(S->H->server, q);
+ efree(q);
status = PQresultStatus(S->result);
if (status != PGRES_COMMAND_OK && status != PGRES_TUPLES_OK) {