summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2005-05-30 23:13:59 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:17:19 -0500
commitfe5510e453cf2b46afc143e06f893452798a6b19 (patch)
treee0e330cf5d8a51706c2285f9440a66e9f0957b9c /source4
parent62480f12529326d174d2c53376765e88ca03754f (diff)
downloadsamba-fe5510e453cf2b46afc143e06f893452798a6b19.tar.gz
samba-fe5510e453cf2b46afc143e06f893452798a6b19.tar.bz2
samba-fe5510e453cf2b46afc143e06f893452798a6b19.zip
r7121: More subcontext fixes. A subcontext does not always imply internally deferred
data, though it might. (This used to be commit cf522ba372216da3dae0c534a6a698c21a484ab7)
Diffstat (limited to 'source4')
-rw-r--r--source4/build/pidl/ndr.pm1
-rw-r--r--source4/build/pidl/ndr_parser.pm6
2 files changed, 1 insertions, 6 deletions
diff --git a/source4/build/pidl/ndr.pm b/source4/build/pidl/ndr.pm
index 876fbc247c..629d413db2 100644
--- a/source4/build/pidl/ndr.pm
+++ b/source4/build/pidl/ndr.pm
@@ -179,7 +179,6 @@ sub can_contain_deferred
return 1 if ($e->{POINTERS});
return 0 if (typelist::is_scalar($e->{TYPE}));
- return 1 if (defined(util::has_property($e, "subcontext")));
return 1 unless (typelist::hasType($e->{TYPE})); # assume the worst
my $type = typelist::getType($e->{TYPE});
diff --git a/source4/build/pidl/ndr_parser.pm b/source4/build/pidl/ndr_parser.pm
index b01e7e2e4c..3e3fe89e82 100644
--- a/source4/build/pidl/ndr_parser.pm
+++ b/source4/build/pidl/ndr_parser.pm
@@ -489,8 +489,6 @@ sub ParseSubcontextPushStart($$$$$)
my $ndr_flags = shift;
my $retndr = "_ndr_$e->{NAME}";
- return unless ($ndr_flags =~ /NDR_SCALARS/);
-
pidl "{";
indent;
pidl "struct ndr_push *$retndr;";
@@ -518,8 +516,6 @@ sub ParseSubcontextPushEnd($$$)
my $ndr_flags = shift;
my $ndr = "_ndr_$e->{NAME}";
- return unless ($ndr_flags =~ /NDR_SCALARS/);
-
if (defined $l->{COMPRESSION}) {
ParseCompressionPushEnd($e, $l, $ndr);
}
@@ -544,7 +540,7 @@ sub ParseSubcontextPullStart($$$$$$)
my $env = shift;
my $retndr = "_ndr_$e->{NAME}";
- pidl "if (($ndr_flags) & NDR_SCALARS) {";
+ pidl "{";
indent;
pidl "struct ndr_pull *$retndr;";
pidl "NDR_ALLOC(ndr, $retndr);";