From: Graham B. <gb...@po...> - 2002-08-19 12:19:24
|
The were probably added for performance reasons. They should be replaced by a + instead of being removed. Graham. On Mon, Aug 19, 2002 at 01:32:51PM +0200, Mathias Meisfjordskar wrote: > > Hello all. > > I've just installed Net::LDAP with perl 5.004_04. When using filers I > get: > > /^(\\.|[^\\*]*)*\*/: regexp *+ operand could be empty at /usit/saruman/gt-u1/mathiasm/.perl/linux/lib/Net/LDAP/Filter.pm line 120. > BEGIN failed--compilation aborted at /usit/saruman/gt-u1/mathiasm/.perl/linux/lib/Net/LDAP/Search.pm line 11. > > on both line 120 and 125. I removed two '*'s from Filter.pm and > everything works like a dream. (Shouldn't change the behavior of the > regex'es.) Patch follows: > > -----------------------------Patch begin------------------------------------- > > --- /usit/dumbo/site/Download/perl-ldap-0.26/lib/Net/LDAP/Filter.pm Thu Jan 31 15:02:25 2002 > +++ /usit/saruman/gt-u1/mathiasm/.perl/linux/lib/Net/LDAP/Filter.pm Mon Aug 19 13:21:15 2002 > @@ -117,12 +117,12 @@ > # If the op is = and contains one or more * not > # preceeded by \ then do partial matches > > - if ($op eq '=' && $val =~ /^(\\.|[^\\*]*)*\*/o ) { > + if ($op eq '=' && $val =~ /^(\\.|[^\\*])*\*/o ) { > > my $n = []; > my $type = 'initial'; > > - while ($val =~ s/^((\\.|[^\\*]*)*)\*//) { > + while ($val =~ s/^((\\.|[^\\*])*)\*//) { > push(@$n, { $type, _unescape("$1") }) # $1 is readonly, copy it > if length($1) or $type eq 'any'; > > ----------------------------Patch end--------------------------------------- > > Hope it helps. > > (I'm not on the list, so if any comments please Cc.) > > > Cheers, > -- > Mathias Meisfjordskar > > GNU/Linux addict. > Debian - What your mom would use if it were twenty times easier. > > > ------------------------------------------------------- > This sf.net email is sponsored by: OSDN - Tired of that same old > cell phone? Get a new here for FREE! > https://www.inphonic.com/r.asp?r=sourceforge1&refcode1=vs3390 |