[svn:dbd-oracle] r15463 - dbd-oracle/trunk

[email protected] Tue, 30 Oct 2012 16:50:12 -0700 (PDT)
Newsgroups perl.dbd.oracle.changes
Message-ID <[email protected]>
Author: byterock
Date: Tue Oct 30 16:50:07 2012
New Revision: 15463

Modified:
   dbd-oracle/trunk/Changes
   dbd-oracle/trunk/dbdimp.c

Log:
fix memory leak in execute array (John Scoles, Pierre-Alain Blanc)

Modified: dbd-oracle/trunk/Changes
==============================================================================
--- dbd-oracle/trunk/Changes	(original)
+++ dbd-oracle/trunk/Changes	Tue Oct 30 16:50:07 2012
@@ -3,6 +3,8 @@
 NEXT_VERSION
 
   [BUG FIXES]
+  
+  - fix memory leak in execute_array (John Scoles, Pierre-Alain Blanc)
 
   - Fix RT80349 - The error message in execute_for_fetch when a row fails
     can contain the wrong error count. Thanks to Steffen Goeldner for

Modified: dbd-oracle/trunk/dbdimp.c
==============================================================================
--- dbd-oracle/trunk/dbdimp.c	(original)
+++ dbd-oracle/trunk/dbdimp.c	Tue Oct 30 16:50:07 2012
@@ -3684,15 +3684,16 @@
 	STRLEN len;
 	int outparams = (imp_sth->out_params_av) ? AvFILL(imp_sth->out_params_av)+1 : 0;
 	int *utf8_flgs;
-	tuples_utf8_av=newAV();
+	tuples_utf8_av = newAV();
+	sv_2mortal((SV*)tuples_utf8_av);
 
 	if (debug >= 2 || dbd_verbose >= 3 )
 		PerlIO_printf(
-            DBIc_LOGPIO(imp_sth),
-            "  ora_st_execute_array %s count=%d (%s %s %s)...\n",
-            oci_stmt_type_name(imp_sth->stmt_type), exe_count,
-            neatsvpv(tuples,0), neatsvpv(tuples_status,0),
-            neatsvpv(columns, 0));
+			DBIc_LOGPIO(imp_sth),
+			"  ora_st_execute_array %s count=%d (%s %s %s)...\n",
+			oci_stmt_type_name(imp_sth->stmt_type), exe_count,
+			neatsvpv(tuples,0), neatsvpv(tuples_status,0),
+			neatsvpv(columns, 0));
 
 	if (is_select) {
 		croak("ora_st_execute_array(): SELECT statement not supported "