cvs: php4 /ext/pgsql pgsql.c
| From: | Yasuo Ohgaki | Date: | Thu, 04 Apr 2002 10:25:12 +0000 |
| Subject: | cvs: php4 /ext/pgsql pgsql.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-10851@lists.php.net to get a copy of this message | ||
yohgaki Thu Apr 4 05:25:12 2002 EDT
Modified files:
/php4/ext/pgsql pgsql.c
Log:
Fixed crash with pg_escape_*()
# I'll MFH later.
Index: php4/ext/pgsql/pgsql.c
diff -u php4/ext/pgsql/pgsql.c:1.166 php4/ext/pgsql/pgsql.c:1.167
--- php4/ext/pgsql/pgsql.c:1.166 Sat Mar 30 20:45:22 2002
+++ php4/ext/pgsql/pgsql.c Thu Apr 4 05:25:12 2002
@@ -19,7 +19,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pgsql.c,v 1.166 2002/03/31 01:45:22 yohgaki Exp $ */
+/* $Id: pgsql.c,v 1.167 2002/04/04 10:25:12 yohgaki Exp $ */
#include <stdlib.h>
@@ -2397,8 +2397,10 @@
return;
}
+ to = (char *)emalloc(len*2+1);
len = (int)PQescapeString(to, from, strlen(from));
if (len < 0) {
+ efree(to);
RETURN_FALSE;
}
RETURN_STRINGL(to, len, 0);
@@ -2418,9 +2420,11 @@
to = (char *)PQescapeBytea((unsigned char*)from, strlen(from), (size_t *)&len);
if (len < 0) {
+ /* Don't need to free "to" here*/
RETURN_FALSE;
}
- RETURN_STRINGL(to, len, 0);
+ RETURN_STRINGL(to, len, 1);
+ free(to);
}
/* }}} */
#endif