- Applied patch by Boszormenyi Zoltan <zb@cybertec.at> to fix memory
leak in decimal handling.
+
+Thu, 15 Oct 2009 12:15:31 +0200
+
+ - Made ECPG more robust against applications freeing strings, based on
+ patch send in by Boszormenyi Zoltan <zb@cybertec.at>.
- Set ecpg library version to 6.2.
- Set compat library version to 3.2.
- Set ecpg version to 4.6.
-/* $PostgreSQL: pgsql/src/interfaces/ecpg/ecpglib/prepare.c,v 1.32 2009/07/22 11:07:02 mha Exp $ */
+/* $PostgreSQL: pgsql/src/interfaces/ecpg/ecpglib/prepare.c,v 1.33 2009/10/15 10:20:15 meskes Exp $ */
#define POSTGRES_ECPG_INTERNAL
#include "postgres_fe.h"
replace_variables(&(stmt->command), lineno);
/* add prepared statement to our list */
- this->name = (char *) name;
+ this->name = ecpg_strdup(name, lineno);
this->stmt = stmt;
/* and finally really prepare the statement */
if (!ecpg_check_PQresult(query, stmt->lineno, stmt->connection->connection, stmt->compat))
{
ecpg_free(stmt->command);
+ ecpg_free(this->name);
ecpg_free(this);
ecpg_free(stmt);
return false;
/* okay, free all the resources */
ecpg_free(this->stmt->command);
ecpg_free(this->stmt);
+ ecpg_free(this->name);
if (prev != NULL)
prev->next = this->next;
else