On Fri, Oct 14, 2005 at 05:34:12PM -0400, Eric Lenio wrote:
> 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 how/where can I get revision 1086 to patch against?

It should apply fine to what you have. If not, apply by hand.

Tim.

Reply via email to