Graham,

sorted out why I could not see what was going wrong. I had assumed the
callback received a Net::LDAP::Entry or undefined. Doh!

However, the DESTROY is still being called and killing the error
messages - so this could do with being added to the package.

--- LDAP.pm~    2012-06-20 12:02:36.000000000 +0100
+++ LDAP.pm     2012-06-20 12:03:01.000000000 +0100
@@ -902,6 +902,7 @@

  if (my $msgs = delete $self->{net_ldap_mesg}) {
    foreach my $mesg (values %$msgs) {
+      next unless (defined $mesg);
      $mesg->set_error($err, $etxt);
    }
  }

Also, the following patch is needed to fix a warning which points at a
bug.

--- LDAP/Intermediate/SyncInfo.pm~      2012-01-29 09:31:37.000000000 +0000
+++ LDAP/Intermediate/SyncInfo.pm       2012-06-20 12:00:27.000000000 +0100
@@ -56,9 +56,9 @@

sub newcookie {
  my $self = shift;
-  @_ ? ($self->{asn}{newcookie}=shift)
-     : $self->{asn}{newcookie};
-  $self->{asn}{cookie};
+  return (@_
+         ? ($self->{asn}{newcookie}=shift)
+         : $self->{asn}{newcookie});
}

sub responseValue {


Howard.


Reply via email to