diff options
author | Stefan Metzmacher <metze@samba.org> | 2005-05-30 17:58:12 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:17:19 -0500 |
commit | d089ecb5b6bd2ed6a2232ccaf9d7471d256c9ea2 (patch) | |
tree | 3ccf773e9d26c71aab1c78e8d3bfb6dbcc71f4a3 /source4/build/pidl/ndr_parser.pm | |
parent | c5981f6db057401c232baf1f01fb53ec9dbd4bb9 (diff) | |
download | samba-d089ecb5b6bd2ed6a2232ccaf9d7471d256c9ea2.tar.gz samba-d089ecb5b6bd2ed6a2232ccaf9d7471d256c9ea2.tar.bz2 samba-d089ecb5b6bd2ed6a2232ccaf9d7471d256c9ea2.zip |
r7118: allways pull scalars and buffers when pulling the subcontext context
(this, is not the full fix, still doesn't work :-( )
metze
(This used to be commit 9a858b5614db8dfed13f76099bf042182dfa4a0c)
Diffstat (limited to 'source4/build/pidl/ndr_parser.pm')
-rw-r--r-- | source4/build/pidl/ndr_parser.pm | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source4/build/pidl/ndr_parser.pm b/source4/build/pidl/ndr_parser.pm index edc6df31ad..b01e7e2e4c 100644 --- a/source4/build/pidl/ndr_parser.pm +++ b/source4/build/pidl/ndr_parser.pm @@ -601,9 +601,9 @@ sub ParseElementPushLevel my $ndr_flags = CalcNdrFlags($l, $primitives, $deferred); if (defined($ndr_flags)) { - if ($l->{TYPE} eq "SUBCONTEXT") { + if ($l->{TYPE} eq "SUBCONTEXT") { $ndr = ParseSubcontextPushStart($e, $l, $ndr, $var_name, $ndr_flags); - ParseElementPushLevel($e, Ndr::GetNextLevel($e, $l), $ndr, $var_name, $env, $primitives, $deferred); + ParseElementPushLevel($e, Ndr::GetNextLevel($e, $l), $ndr, $var_name, $env, 1, 1); ParseSubcontextPushEnd($e, $l, $ndr_flags); } elsif ($l->{TYPE} eq "POINTER") { ParsePtrPush($e, $l, $var_name); @@ -923,9 +923,9 @@ sub ParseElementPullLevel # Only pull something if there's actually something to be pulled if (defined($ndr_flags)) { if ($l->{TYPE} eq "SUBCONTEXT") { - ($ndr,$var_name) = ParseSubcontextPullStart($e, $l, $ndr, $var_name, $ndr_flags, $env); - ParseElementPullLevel($e,Ndr::GetNextLevel($e,$l), $ndr, $var_name, $env, $primitives, $deferred); - ParseSubcontextPullEnd($e, $l); + ($ndr,$var_name) = ParseSubcontextPullStart($e, $l, $ndr, $var_name, $ndr_flags, $env); + ParseElementPullLevel($e,Ndr::GetNextLevel($e,$l), $ndr, $var_name, $env, 1, 1); + ParseSubcontextPullEnd($e, $l); } elsif ($l->{TYPE} eq "ARRAY") { my $length = ParseArrayPullHeader($e, $l, $ndr, $var_name, $env); |