1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-17 02:05:21 +03:00

fixed the handling of zero-length top level arrays in pidl

(This used to be commit fa45529af72090c2604708a651d5e5714a844d72)
This commit is contained in:
Andrew Tridgell 2003-12-15 01:07:08 +00:00
parent a22917260c
commit ba523d895a

View File

@ -1155,10 +1155,12 @@ sub ParseFunctionElementPush($$)
if (util::array_size($e)) {
if (util::need_wire_pointer($e)) {
pidl "\tNDR_CHECK(ndr_push_ptr(ndr, r->$inout.$e->{NAME}));\n";
pidl "\tif (r->$inout.$e->{NAME}) {\n";
ParseArrayPush($e, "r->$inout.", "NDR_SCALARS|NDR_BUFFERS");
pidl "\t}\n";
} else {
ParseArrayPush($e, "r->$inout.", "NDR_SCALARS|NDR_BUFFERS");
}
pidl "\tif (r->$inout.$e->{NAME}) {\n";
ParseArrayPush($e, "r->$inout.", "NDR_SCALARS|NDR_BUFFERS");
pidl "\t}\n";
} else {
ParseElementPushScalar($e, "r->$inout.", "NDR_SCALARS|NDR_BUFFERS");
if ($e->{POINTERS}) {