• J
    rpc: don't destroy xdr before creating it in virNetMessageEncodeHeader · 6e1fc355
    Ján Tomko 提交于
    On OOM, xdr_destroy got called even though it wasn't created yet.
    
    Found by coverity:
    Error: UNINIT (CWE-457):
        libvirt-0.10.2/src/rpc/virnetmessage.c:214: var_decl: Declaring
        variable "xdr" without initializer.
        libvirt-0.10.2/src/rpc/virnetmessage.c:219: cond_true: Condition
        "virReallocN(&msg->buffer, 1UL /* sizeof (*msg->buffer) */,
        msg->bufferLength) < 0", taking true branch
        libvirt-0.10.2/src/rpc/virnetmessage.c:221: goto: Jumping to label
        "cleanup"
        libvirt-0.10.2/src/rpc/virnetmessage.c:257: label: Reached label
        "cleanup"
        libvirt-0.10.2/src/rpc/virnetmessage.c:258: uninit_use: Using
        uninitialized value "xdr.x_ops".
    6e1fc355
virnetmessage.c 13.6 KB