[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Broken code in checks/binaries



On Tue, May 20, 2008 at 03:57:09AM +0200, Frank Lichtenheld wrote:
> On Mon, May 19, 2008 at 06:45:52PM -0700, Russ Allbery wrote:
> > Frank Lichtenheld <djpig@debian.org> writes:
> > > checks/binaries contains the following piece of code:
> > > 127 sub lib_soname_path {
> > > 128    my (@paths) = @_;
> > > 129    foreach my $path (@paths) {
> > > 130	return 1 if $path =~ m%^(\.?/)?lib/[^/]+$%;
> > > 131	return 1 if $path =~ m%^(\.?/)?usr/lib/[^/]+$%;
> > > 132	return 1 if $path =~ m%^(\.?/)?usr/X11R6/lib/[^/]+$%;
> > > 133	return 1 if $path =~ m%^(\.?/)?lib/libnss_[^.]+\.so(\.[0-9]+)$%;
> > > 134    }
> > > 135    return 0;
> > > 136 }
> > >
> > > Obviously line 133 is never reached because 131 already matches such
> > > paths.  And return 1 seems to be wrong thing to do for line 133
> > > anyway. What is line 133 supposed to do?
> > 
> > return 0 and be above all of the rest, I think.  Good catch.  I wonder
> 
> Not "next" instead of "return"?
> 
> > what I was thinking there.  The goal is to not require NSS modules to have
> > SONAMEs or shlibs, since they're weird special cases.

Russ, I was waiting for you to fix this. Did you do the same in reverse or
did you simply forget?

Gruesse,
-- 
Frank Lichtenheld <djpig@debian.org>
www: http://www.djpig.de/


Reply to: