pidl/NDR/Parser: simplify logic in DeclareArrayVariables*()
authorStefan Metzmacher <metze@samba.org>
Thu, 15 Mar 2012 12:12:04 +0000 (13:12 +0100)
committerKarolin Seeger <kseeger@samba.org>
Tue, 10 Apr 2012 18:19:38 +0000 (20:19 +0200)
metze
(cherry picked from commit d15b71523d228f78f317f44181900dbf10b52e33)

pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm

index bcc854b8276dd6c1733c38eba2ecc241bbd33d67..acba0ba2dedbfeab7e46cc2ee33cb1e5eb3d867f 100644 (file)
@@ -1532,11 +1532,10 @@ sub DeclareArrayVariables($$)
        my ($self,$e) = @_;
 
        foreach my $l (@{$e->{LEVELS}}) {
+               next if ($l->{TYPE} ne "ARRAY");
                next if has_fast_array($e,$l);
                next if is_charset_array($e,$l);
-               if ($l->{TYPE} eq "ARRAY") {
-                       $self->pidl("uint32_t cntr_$e->{NAME}_$l->{LEVEL_INDEX};");
-               }
+               $self->pidl("uint32_t cntr_$e->{NAME}_$l->{LEVEL_INDEX};");
        }
 }
 
@@ -1545,15 +1544,14 @@ sub DeclareArrayVariablesNoZero($$$)
        my ($self,$e,$env) = @_;
 
        foreach my $l (@{$e->{LEVELS}}) {
+               next if ($l->{TYPE} ne "ARRAY");
                next if has_fast_array($e,$l);
                next if is_charset_array($e,$l);
-               if ($l->{TYPE} eq "ARRAY") {
-                   my $length = ParseExpr($l->{LENGTH_IS}, $env, $e->{ORIGINAL});
-                   if ($length eq "0") {
+               my $length = ParseExpr($l->{LENGTH_IS}, $env, $e->{ORIGINAL});
+               if ($length eq "0") {
                        warning($e->{ORIGINAL}, "pointless array cntr: 'cntr_$e->{NAME}_$l->{LEVEL_INDEX}': length=$length");
-                   } else {
+               } else {
                        $self->pidl("uint32_t cntr_$e->{NAME}_$l->{LEVEL_INDEX};");
-                   }
                }
        }
 }