DBD::Proxy version 0.2004

fetch() doesn't set proxy_rows.

disconnect() shouldn't attempt to dereference rdbh if it isn't defined.

Patches attached.

Have a great day !

Philip Dye
Senior Research Systems Programmer
Computing Facilities Group
School of Computer Science

*** DBD/Proxy.pm.orig   Mon Jun 25 19:40:16 2007
--- DBD/Proxy.pm        Thu Aug  2 16:13:59 2007
*************** sub fetch ($) {
*** 609,614 ****
--- 609,615 ----
        }
        return undef unless @rows;
        $sth->{'proxy_data'} = $data = [EMAIL PROTECTED];
+       $sth->{'proxy_rows'} = @rows;
      }
      my $row = shift @$data;
  
*** DBD/Proxy.pm.orig   Mon Jun 25 19:40:16 2007
--- DBD/Proxy.pm        Thu Aug  2 16:10:27 2007
*************** sub disconnect ($) {
*** 306,315 ****
  
      # Drop database connection at remote end
      my $rdbh = $dbh->{'proxy_dbh'};
      local $SIG{__DIE__} = 'DEFAULT';
      local $@;
!     eval { $rdbh->disconnect() };
      DBD::Proxy::proxy_set_err($dbh, $@) if $@;
      
      # Close TCP connect to remote
      # XXX possibly best left till DESTROY? Add a config attribute to choose?
--- 306,317 ----
  
      # Drop database connection at remote end
      my $rdbh = $dbh->{'proxy_dbh'};
+     if ( defined($rdbh) ) {
        local $SIG{__DIE__} = 'DEFAULT';
        local $@;
!       eval { $rdbh->disconnect() } ;
        DBD::Proxy::proxy_set_err($dbh, $@) if $@;
+     }
      
      # Close TCP connect to remote
      # XXX possibly best left till DESTROY? Add a config attribute to choose?

Reply via email to