mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
pidl: calculate subcontext_size only once per pull
For security_ace_coda in security.idl, the sub-context size is
involves a slightly non-trivial function call which returns a constant
value.
In all other cases, a constant expression is used, and this makes
no difference.
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15574
(cherry picked from commit 9811762775
)
This commit is contained in:
parent
b5289d66e9
commit
f8014cae2e
@ -603,7 +603,8 @@ sub ParseSubcontextPullStart($$$$$)
|
||||
$self->pidl("{");
|
||||
$self->indent;
|
||||
$self->pidl("struct ndr_pull *$subndr;");
|
||||
$self->pidl("NDR_CHECK(ndr_pull_subcontext_start($ndr, &$subndr, $l->{HEADER_SIZE}, $subcontext_size));");
|
||||
$self->pidl("ssize_t sub_size = $subcontext_size;");
|
||||
$self->pidl("NDR_CHECK(ndr_pull_subcontext_start($ndr, &$subndr, $l->{HEADER_SIZE}, sub_size));");
|
||||
|
||||
if (defined $l->{COMPRESSION}) {
|
||||
$subndr = $self->ParseCompressionPullStart($e, $l, $subndr, $env);
|
||||
@ -622,7 +623,7 @@ sub ParseSubcontextPullEnd($$$$$)
|
||||
$self->ParseCompressionPullEnd($e, $l, $subndr, $env);
|
||||
}
|
||||
|
||||
$self->pidl("NDR_CHECK(ndr_pull_subcontext_end($ndr, $subndr, $l->{HEADER_SIZE}, $subcontext_size));");
|
||||
$self->pidl("NDR_CHECK(ndr_pull_subcontext_end($ndr, $subndr, $l->{HEADER_SIZE}, sub_size));");
|
||||
$self->deindent;
|
||||
$self->pidl("}");
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user