diff options
author | Stefan Metzmacher <metze@samba.org> | 2007-08-17 12:55:47 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 15:02:08 -0500 |
commit | a9531c0e23b622cb96c6c4a61a0df43d12a3cee8 (patch) | |
tree | 026a258bd69a190db0f007c0e34feed47b698137 /source4/pidl | |
parent | 70b525a546da5deb8dbc2eff8c5334f9ec57497a (diff) | |
download | samba-a9531c0e23b622cb96c6c4a61a0df43d12a3cee8.tar.gz samba-a9531c0e23b622cb96c6c4a61a0df43d12a3cee8.tar.bz2 samba-a9531c0e23b622cb96c6c4a61a0df43d12a3cee8.zip |
r24517: move skipping pointer before an array logic into the
pointer loop as we do in other places
metze
(This used to be commit ee92d47b538e2f92e4c342893f04c598311e1021)
Diffstat (limited to 'source4/pidl')
-rw-r--r-- | source4/pidl/lib/Parse/Pidl/Samba4/Header.pm | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/source4/pidl/lib/Parse/Pidl/Samba4/Header.pm b/source4/pidl/lib/Parse/Pidl/Samba4/Header.pm index f03f7c0c43..9d8b521a49 100644 --- a/source4/pidl/lib/Parse/Pidl/Samba4/Header.pm +++ b/source4/pidl/lib/Parse/Pidl/Samba4/Header.pm @@ -10,7 +10,7 @@ use strict; use Parse::Pidl qw(fatal); use Parse::Pidl::Typelist qw(mapTypeName scalar_is_reference); use Parse::Pidl::Util qw(has_property is_constant); -use Parse::Pidl::NDR qw(GetPrevLevel); +use Parse::Pidl::NDR qw(GetNextLevel); use Parse::Pidl::Samba4 qw(is_intree); use vars qw($VERSION); @@ -68,6 +68,10 @@ sub HeaderElement($) my $numstar = 0; foreach my $l (@{$element->{LEVELS}}) { next unless ($l->{TYPE} eq "POINTER"); + + my $nl = GetNextLevel($element, $l); + next if (defined($nl) and $nl->{TYPE} eq "ARRAY"); + $numstar++; } if ($numstar >= 1) { @@ -77,8 +81,6 @@ sub HeaderElement($) next unless ($l->{TYPE} eq "ARRAY"); next if ($l->{IS_FIXED}) and not has_property($element, "charset"); - my $pl = GetPrevLevel($element, $l); - next if (defined($pl) and $pl->{TYPE} eq "POINTER"); $numstar++; } pidl "*" foreach (1..$numstar); |