Re: DBD::Oracle and $sth->{PRECISION}



On Fri, Oct 14, 2005 at 10:09:17PM +0100, Tim Bunce wrote:
> On Thu, Oct 13, 2005 at 12:57:52PM -0400, Eric Lenio wrote:
> > > > # failed test 36 at line 109.
> > > > FAILED tests 12, 24, 36-38
> > > > Failed 5/35 tests, 85.71% okay
> > > > t/21nchar............... Database and client versions and character sets:
> > > > Database 9.2.0.3.0 CHAR set is AL32UTF8 (Unicode), NCHAR set is UTF8 (Unicode)
> > > > Client 9.2.0.3 NLS_LANG is 'AMERICAN_AMERICA.AL32UTF8', NLS_NCHAR is '<unset>'
> > > >
> > > > FYI I have another Oracle instance on the same machine which if I use this
> > > > instance instead of the original one used above the tests all pass.
> > >
> > > What client and server character set details are output by make test
> > > for that instance?
> >
> > Here is the char set details for the instance that passes the tests:
> >
> > t/21nchar............... Database and client versions and character sets:
> > Database 9.2.0.3.0 CHAR set is WE8ISO8859P1 (Non-Unicode), NCHAR set is AL16UTF16 (Unicode)
> > Client 9.2.0.3 NLS_LANG is 'AMERICAN_AMERICA.AL32UTF8', NLS_NCHAR is '<unset>'
>
> Here's an off-the-top-of-my-head patch, totally untested and barely
> thought about, but it seems plausible...
>
> Index: oci8.c
> ===================================================================
> --- oci8.c (revision 1086)
> +++ oci8.c (working copy)
> @@ -1223,9 +1223,9 @@
> /* FALLTHRU */
> case 96: /* CHAR */
> fbh->disize = fbh->dbsize;
> + fbh->prec = fbh->disize;
> if (CS_IS_UTF8(fbh->csid))
> fbh->disize = fbh->dbsize * 4;
> - fbh->prec = fbh->disize;
> break;
> case 23: /* RAW */
> fbh->disize = fbh->dbsize * 2;
>
> Let me know if the test suite runs clean with this.
>
> Tim.
>

Tim how/where can I get revision 1086 to patch against?
.