widl: Tweak the rules for when to call pfnFree for arrays.
Varying arrays that aren't unmarshalled shouldn't be freed, but conformant arrays that aren't unmarshalled should.
This commit is contained in:
parent
a4269c8eed
commit
b57a322b02
@ -2765,9 +2765,10 @@ static void write_remoting_arg(FILE *file, int indent, const func_t *func,
|
|||||||
{
|
{
|
||||||
/* these are all unmarshalled by pointing into the buffer on the
|
/* these are all unmarshalled by pointing into the buffer on the
|
||||||
* server side */
|
* server side */
|
||||||
if (type->type != RPC_FC_SMFARRAY &&
|
if (type->type == RPC_FC_BOGUS_ARRAY ||
|
||||||
type->type != RPC_FC_LGFARRAY &&
|
type->type == RPC_FC_CVARRAY ||
|
||||||
type->type != RPC_FC_CARRAY)
|
(type->type == RPC_FC_SMVARRAY && type->type == RPC_FC_LGVARRAY && in_attr) ||
|
||||||
|
(type->type == RPC_FC_CARRAY && type->type == RPC_FC_CARRAY && !in_attr))
|
||||||
{
|
{
|
||||||
print_file(file, indent, "if (%s)\n", var->name);
|
print_file(file, indent, "if (%s)\n", var->name);
|
||||||
indent++;
|
indent++;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user