mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 21:55:25 +00:00
virsh: fix invalid free
* tools/virsh.c (cmdDetachDisk): fix invalid free due to using uninitialised value. * How to reproduce? # virsh detach-disk a b error: failed to get domain 'a' *** glibc detected *** virsh: double free or corruption (out): 0x00007fff410ed1a0 *** ======= Backtrace: ========= /lib64/libc.so.6[0x39cf0750c6] /usr/lib/libvirt.so.0(virFree+0x39)[0x7f045938a239] virsh[0x41c768] virsh[0x415075] virsh[0x425d64] /lib64/libc.so.6(__libc_start_main+0xfd)[0x39cf01ecdd] virsh[0x40a419] ======= Memory map: ======== 00400000-0044e000 r-xp 00000000 08:0e 760441 /usr/bin/virsh 0064e000-00650000 rw-p 0004e000 08:0e 760441 /usr/bin/virsh ...... 39d7229000-39d722b000 r--p 00029000 08:0e 2183477 /lib64/libk5crypto.so.3.1 39d722b000-39d722c000 rw-p 0002b000 08:0e 2183477 /lib64/lAborted (core dumped) Signed-off-by: Alex Jia <ajia@redhat.com>
This commit is contained in:
parent
0f8e7ae33a
commit
68fd6a3b34
@ -14826,7 +14826,7 @@ cmdDetachDisk(vshControl *ctl, const vshCmd *cmd)
|
|||||||
char *disk_xml = NULL;
|
char *disk_xml = NULL;
|
||||||
virDomainPtr dom = NULL;
|
virDomainPtr dom = NULL;
|
||||||
const char *target = NULL;
|
const char *target = NULL;
|
||||||
char *doc;
|
char *doc = NULL;
|
||||||
int ret;
|
int ret;
|
||||||
bool functionReturn = false;
|
bool functionReturn = false;
|
||||||
unsigned int flags;
|
unsigned int flags;
|
||||||
|
Loading…
Reference in New Issue
Block a user