severe memory leak caused by broken palette_destroy() function
The following commit breaks the code of the function palette_destroy(). http://git.kernel.org/?p=virt/kvm/qemu-kvm.git;a=commit;h=e31e3694afef58ba191cbcc6875ec243e5971268 The broken code causes a severe memory leak of 'VncPalette' structures because it never frees anything: 70 void palette_destroy(VncPalette *palette) 71 { 72 if (palette == NULL) { 73 qemu_free(palette); 74 } 75 } Version 2 of the patch calls qemu_free() unconditionally. Signed-off-by: Ulrich Obergfell <uobergfe@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
05175535a3
commit
d6e58090fe
@ -69,9 +69,7 @@ void palette_init(VncPalette *palette, size_t max, int bpp)
|
||||
|
||||
void palette_destroy(VncPalette *palette)
|
||||
{
|
||||
if (palette == NULL) {
|
||||
qemu_free(palette);
|
||||
}
|
||||
qemu_free(palette);
|
||||
}
|
||||
|
||||
int palette_put(VncPalette *palette, uint32_t color)
|
||||
|
Loading…
Reference in New Issue
Block a user