mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
virNetServerProgramDispatchCall: Avoid calling xdr_free(_, NULL)
In recent commit of v8.8.0-41-g41eb0f446c I've suggested during review to put both xdr_free() calls under error label, assuming that xdr_free() accepts NULL and thus is a NOP when the control jumps onto the label even before either of @arg or @ret was allocated. Well, turns out, xdr_free() does no accept NULL and thus we have to guard its call. But since @dispatcher is already set by the time either of the variables is allocated, we can replace the condition from 'if (dispatcher)' to 'if (arg)' and 'if (ret)'. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
parent
031878c236
commit
8ef8d9e21b
@ -475,10 +475,10 @@ virNetServerProgramDispatchCall(virNetServerProgram *prog,
|
||||
return virNetServerClientSendMessage(client, msg);
|
||||
|
||||
error:
|
||||
if (dispatcher) {
|
||||
if (arg)
|
||||
xdr_free(dispatcher->arg_filter, arg);
|
||||
if (ret)
|
||||
xdr_free(dispatcher->ret_filter, ret);
|
||||
}
|
||||
|
||||
/* Bad stuff (de-)serializing message, but we have an
|
||||
* RPC error message we can send back to the client */
|
||||
|
Loading…
x
Reference in New Issue
Block a user