Author: byterock
Date: Mon Feb 16 08:57:11 2009
New Revision: 12505

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

Log:
version and a refinement to the 11 OCI_ATTR_DATA_SIZE return 0 bug

Modified: dbd-oracle/trunk/Changes
==============================================================================
--- dbd-oracle/trunk/Changes    (original)
+++ dbd-oracle/trunk/Changes    Mon Feb 16 08:57:11 2009
@@ -1,4 +1,5 @@
 =head1 Changes in DBD-Oracle 1.23(svn rev #####)
+  Fix in case there may be a bug in 11 where the OCI_ATTR_DATA_SIZE my return 
0 which should never happen, John scoles
   Fix on the Makefile.PL for a possible sql bug in IC from Martin J. Evans
   Added a change from a suggestion from Martic Evans for making ref cursors 
faster.
   Added rt.cpan.org Ticket #=42328 ora_objects attribute for extended embedded 
objects support from Tomas Pokorny

Modified: dbd-oracle/trunk/Oracle.pm
==============================================================================
--- dbd-oracle/trunk/Oracle.pm  (original)
+++ dbd-oracle/trunk/Oracle.pm  Mon Feb 16 08:57:11 2009
@@ -7,7 +7,7 @@
 
 require 5.003;
 
-$DBD::Oracle::VERSION = '1.22';
+$DBD::Oracle::VERSION = '1.23';
 
 my $ORACLE_ENV  = ($^O eq 'VMS') ? 'ORA_ROOT' : 'ORACLE_HOME';
 

Modified: dbd-oracle/trunk/oci8.c
==============================================================================
--- dbd-oracle/trunk/oci8.c     (original)
+++ dbd-oracle/trunk/oci8.c     Mon Feb 16 08:57:11 2009
@@ -2701,6 +2701,8 @@
 
                OCIAttrGet_parmdp(imp_sth, fbh->parmdp, &fbh->dbtype, 0, 
OCI_ATTR_DATA_TYPE, status);
                OCIAttrGet_parmdp(imp_sth, fbh->parmdp, &fbh->dbsize, 0, 
OCI_ATTR_DATA_SIZE, status);
+               /*may be a bug in 11 where the OCI_ATTR_DATA_SIZE my return 0 
which should never happen*/
+               /*to fix or kludge for this I added a little code for 
ORA_VARCHAR2 below */
 
 #ifdef OCI_ATTR_CHAR_USED
                /* 0 means byte-length semantics, 1 means character-length 
semantics */
@@ -2735,8 +2737,8 @@
                /*      the simple types        */
                        case    ORA_VARCHAR2:                           /* 
VARCHAR2     */
 
-                               if (fbh->dbsize == 0){
-                                       fbh->dbsize=32;
+                               if (fbh->dbsize == 0){  
+                                       fbh->dbsize=4000;
                                }
                                avg_width = fbh->dbsize / 2;
                /* FALLTHRU */

Reply via email to