scripts/metadata.pl: fix handling of multiple conditional depends on the same package
authorFelix Fietkau <nbd@openwrt.org>
Tue, 9 Mar 2010 15:51:40 +0000 (15:51 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Tue, 9 Mar 2010 15:51:40 +0000 (15:51 +0000)
SVN-Revision: 20085

scripts/metadata.pl

index c963964..70d1b40 100755 (executable)
@@ -423,6 +423,8 @@ sub mconf_depends {
                my $vdep;
                my $condition = $parent_condition;
 
+               next if $seen->{$depend};
+               $seen->{$depend} = 1;
                if ($depend =~ /^(.+):(.+)$/) {
                        if ($1 ne "PACKAGE_$pkgname") {
                                if ($condition) {
@@ -433,9 +435,7 @@ sub mconf_depends {
                        }
                        $depend = $2;
                }
-               next if $seen->{$depend};
                next if $package{$depend} and $package{$depend}->{buildonly};
-               $seen->{$depend} = 1;
                if ($vdep = $package{$depend}->{vdepends}) {
                        $depend = join("||", map { "PACKAGE_".$_ } @$vdep);
                } else {