Thanks, applied.
Tim.
On Thu, Sep 11, 2003 at 10:31:27PM -0400, Thomas A. Lowery wrote:
> Yep it worked. Here's a new patch:
>
> --- ExampleP.pm.orig 2003-09-11 07:41:25.000000000 -0400
> +++ ExampleP.pm 2003-09-11 22:28:13.000000000 -0400
> @@ -358,10 +358,10 @@
> # either return dynamic values that cannot be precomputed
> # or fetch and cache attribute values too expensive to prefetch.
> if ($attrib eq 'TYPE'){
> - return [ @DBD::ExampleP::stattypes{ @{ $sth->{NAME_lc} } } ];
> + return [ @DBD::ExampleP::stattypes{ @{ $sth->FETCH(q{NAME_lc}) } } ];
> }
> elsif ($attrib eq 'PRECISION'){
> - return [ @DBD::ExampleP::statprec{ @{ $sth->{NAME_lc} } } ];
> + return [ @DBD::ExampleP::statprec{ @{ $sth->FETCH(q{NAME_lc}) } } ];
> }
> elsif ($attrib eq 'ParamValues') {
> my $dbd_param = $sth->{dbd_param} || [];
>
> On Thu, Sep 11, 2003 at 05:11:32PM +0100, Tim Bunce wrote:
> > Thanks. But when/why is $sth->{NAME_lc} undefined?
> > I suspect the right fix is to change $sth->{NAME_lc}
> > to $sth->FETCH('NAME_lc') to trigger the magic that
> > handled the _lc suffix. Could you try that for me?
> >
> > Tim.
> >
> > On Thu, Sep 11, 2003 at 08:15:28AM -0400, Thomas A. Lowery wrote:
> > > Tim,
> > > Here's a minor patch for DBD::ExampleP to fix:
> > > https://rt.cpan.org/Ticket/Display.html?id=2192
> > > Use of uninitialized value in array dereference at
> > > /opt/perl_5.8.0/lib/sun4-solaris-thread-multi/DBD/ExampleP.pm line 360.
> > >
> > >
> > > Tom
> > >
> > > --- ExampleP.pm.orig 2003-09-11 07:41:25.000000000 -0400
> > > +++ ExampleP.pm 2003-07-29 20:53:22.000000000 -0400
> > > @@ -357,10 +357,15 @@
> > > # In reality this would interrogate the database engine to
> > > # either return dynamic values that cannot be precomputed
> > > # or fetch and cache attribute values too expensive to prefetch.
> > > +
> > > if ($attrib eq 'TYPE'){
> > > + return [] unless (defined $sth->{NAME_lc}
> > > + and scalar @{$sth->{NAME_lc}});
> > > return [ @DBD::ExampleP::stattypes{ @{ $sth->{NAME_lc} } } ];
> > > }
> > > elsif ($attrib eq 'PRECISION'){
> > > + return [] unless (defined $sth->{NAME_lc}
> > > + and scalar @{$sth->{NAME_lc}});
> > > return [ @DBD::ExampleP::statprec{ @{ $sth->{NAME_lc} } } ];
> > > }
> > > elsif ($attrib eq 'ParamValues') {