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

[email protected]
Newsgroups perl.dbd.oracle.changes
Message-ID <[email protected]>
Author: byterock
Date: Wed May 20 08:33:12 2009
New Revision: 12785

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

Log:
  Fix for rt.cpan.org Ticket #=46246 fetching from nested cursor (returned from procedure) leads to application crash (abort) from John Scoles


Modified: dbd-oracle/trunk/Changes
==============================================================================
--- dbd-oracle/trunk/Changes	(original)
+++ dbd-oracle/trunk/Changes	Wed May 20 08:33:12 2009
@@ -1,4 +1,5 @@
 =head1 Changes in DBD-Oracle 1.24(svn rev???)
+  Fix for rt.cpan.org Ticket #=46246 fetching from nested cursor (returned from procedure) leads to application crash (abort) from John Scoles
   Fix for rt.cpan.org Ticket #=46016  LOBs bound with ora_field broken from RKITOVER
   Fix for bug in 58object.t when test run as externally identified user from Charles Jardine
 

Modified: dbd-oracle/trunk/oci8.c
==============================================================================
--- dbd-oracle/trunk/oci8.c	(original)
+++ dbd-oracle/trunk/oci8.c	Wed May 20 08:33:12 2009
@@ -2292,10 +2292,12 @@
 	else if (SvOK(imp_drh->ora_cache)){
 		imp_sth->cache_rows = SvIV(imp_drh->ora_cache);
 	}
-
-	if (imp_sth->is_child  && imp_sth->ret_lobs){ /*ref cursors and sp only one row is allowed*/
-		cache_rows  =1;
-		cache_mem  =0;
+	
+	
+	if (imp_sth->is_child  || imp_sth->ret_lobs){ /*ref cursors and sp only one row is allowed*/
+	
+	       cache_rows  =1;
+		   cache_mem  =0;
 
 	} else if (imp_dbh->RowCacheSize || imp_sth->prefetch_memory){
 	/*user set values */
@@ -2878,7 +2880,7 @@
 			case	ORA_CLOB:				/* CLOB	& NCLOB	*/
 			case	ORA_BLOB:				/* BLOB		*/
 			case	114:				/* BFILE	*/
-				fbh->ftype  = fbh->dbtype;
+				fbh->ftype  	  = fbh->dbtype;
 				imp_sth->ret_lobs = 1;
 				/* do we need some addition size logic here? (lab) */
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.