Blob Blame History Raw
From 6ee02b3d27f241dc8ea262ae4233a9e6ef18a0cd Mon Sep 17 00:00:00 2001
From: Peter Lemenkov <lemenkov@gmail.com>
Date: Fri, 29 Jun 2012 14:10:32 +0400
Subject: [PATCH 12/13] Free columns data only in Oracle

---
 modules/db_oracle/dbase.c |    7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/modules/db_oracle/dbase.c b/modules/db_oracle/dbase.c
index 4dcc757..d129e11 100644
--- a/modules/db_oracle/dbase.c
+++ b/modules/db_oracle/dbase.c
@@ -182,11 +182,18 @@ void db_oracle_close(db_con_t* _h)
  */
 int db_oracle_free_result(db_con_t* _h, db_res_t* _r)
 {
+	ub4 i;
+
 	if (!_h || !_r) {
 		LM_ERR("invalid parameter value\n");
 		return -1;
 	}
 
+	if (RES_NAMES(_r))
+		for (i=0; i < RES_COL_N(_r); ++i)
+			if (RES_NAMES(_r)[i]->s)
+				pkg_free(RES_NAMES(_r)[i]->s);
+
 	if (db_free_result(_r) < 0)
 	{
 		LM_ERR("failed to free result structure\n");
-- 
1.7.10.4