X-Git-Url: http://git.samba.org/?p=samba.git;a=blobdiff_plain;f=source4%2Fbuild%2Fpidl%2Fheader.pm;h=803916a79c2234104aeb70a587c8decc6ddd525c;hp=efcd2dbb45c7fa0018390219e837592a0e61deba;hb=73477e05dec40e44f78a8673f79b627e904fd696;hpb=595228c4c3a724e8ed257f78d48e24f6575cd366;ds=sidebyside diff --git a/source4/build/pidl/header.pm b/source4/build/pidl/header.pm index efcd2dbb45c..803916a79c2 100644 --- a/source4/build/pidl/header.pm +++ b/source4/build/pidl/header.pm @@ -60,8 +60,7 @@ sub HeaderElement($) pidl tabs(); HeaderType($element, $element->{TYPE}, ""); pidl " "; - if ($element->{POINTERS} && - $element->{TYPE} ne "string") { + if ($element->{POINTERS} && $element->{TYPE} ne "string") { my($n) = $element->{POINTERS}; for (my($i)=$n; $i > 0; $i--) { pidl "*"; @@ -91,10 +90,10 @@ sub HeaderStruct($$) $tab_depth++; my $el_count=0; if (defined $struct->{ELEMENTS}) { - foreach my $e (@{$struct->{ELEMENTS}}) { - HeaderElement($e); - $el_count++; - } + foreach my $e (@{$struct->{ELEMENTS}}) { + HeaderElement($e); + $el_count++; + } } if ($el_count == 0) { # some compilers can't handle empty structures @@ -195,30 +194,7 @@ sub HeaderType($$$) return; } - my $dt; - if (my $t = typelist::getType($e->{TYPE})) { - $dt = $t->{DATA}; - } - - if ($data =~ "string") { - pidl "const char *"; - } elsif (not defined($dt->{TYPE})) { - pidl "struct $data"; - } else { - if ($dt->{TYPE} eq "ENUM") { - pidl "enum $data"; - } elsif ($dt->{TYPE} eq "BITMAP") { - pidl util::bitmap_type_decl($dt); - } elsif ($dt->{TYPE} eq "SCALAR") { - pidl util::map_type($data); - } elsif ($dt->{TYPE} eq "UNION") { - pidl "union $data"; - } elsif ($dt->{TYPE} eq "STRUCT") { - pidl "struct $data"; - } else { - print "Unknown data type type $dt->{TYPE}\n"; - } - } + pidl typelist::mapType($e); } ##################################################################### @@ -334,7 +310,7 @@ sub HeaderFunction($) HeaderFunctionInOut($fn, "out"); if ($fn->{RETURN_TYPE} && $fn->{RETURN_TYPE} ne "void") { tabs(); - pidl util::map_type($fn->{RETURN_TYPE}) . " result;\n"; + pidl typelist::mapScalarType($fn->{RETURN_TYPE}) . " result;\n"; } $tab_depth--; tabs();