Author: byterock
Date: Tue Mar 11 07:23:01 2008
New Revision: 10908

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

Log:
Fixed for embedded object in object from Paul Weiss

Modified: dbd-oracle/trunk/Changes
==============================================================================
--- dbd-oracle/trunk/Changes    (original)
+++ dbd-oracle/trunk/Changes    Tue Mar 11 07:23:01 2008
@@ -1,10 +1,11 @@
 =head1 Changes in DBD-Oracle 1.21(svn rev xxxx) 
 
-  Added support for direct insert of large XML data with XMLType from Hendrik 
Fuss
-  Fixed memory leak (not releasing Temp Lob with OCILobFreeTemporary) when 
created for a bind John Scoles
+  Added support for direct insert of large XML data into XMLType fields from 
Hendrik Fuss
+  Fixed memory leak (not releasing Temp Lob with OCILobFreeTemporary) when 
created for a bind from John Scoles
   Added suppot for bind_param_inout_array with use with execute_array from 
John Scoles
   Added enhancement for Embedded Objects handling from Paul G. Weiss
   Fixed to Makefile.PL let it read makefiles from other makes from Alexander V 
Alekseev
+  Updated POD to tell users to Avoid Using "SQL Call" from Charles Jardine   
   Updated POD to account for rt.cpan.org #30910: "DBD-Oracle crashes when 
trying to read empty LOB" By John Scoles
   
 =head1 Changes in DBD-Oracle 1.20(svn rev 10517) 11th January 2008

Modified: dbd-oracle/trunk/oci8.c
==============================================================================
--- dbd-oracle/trunk/oci8.c     (original)
+++ dbd-oracle/trunk/oci8.c     Tue Mar 11 07:23:01 2008
@@ -1504,7 +1504,8 @@
                                        if (fld->typecode == 
OCI_TYPECODE_OBJECT || fld->typecode == OCI_TYPECODE_VARRAY || fld->typecode == 
OCI_TYPECODE_TABLE || fld->typecode == OCI_TYPECODE_NAMEDCOLLECTION){
 
                                        fld->fields[0].value = newAV();
-                                               attr_value = *(dvoid 
**)attr_value;
+                                               if (fld->typecode != 
OCI_TYPECODE_OBJECT)
+                                                  attr_value = *(dvoid 
**)attr_value;
                                                get_object 
(sth,fld->fields[0].value, fbh, &fld->fields[0],attr_value);
                                                av_push(list, newRV_noinc((SV 
*) fld->fields[0].value));
 

Reply via email to