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,10 +69,8 @@ void palette_init(VncPalette *palette, size_t max, int bpp)
|
|||||||
|
|
||||||
void palette_destroy(VncPalette *palette)
|
void palette_destroy(VncPalette *palette)
|
||||||
{
|
{
|
||||||
if (palette == NULL) {
|
|
||||||
qemu_free(palette);
|
qemu_free(palette);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
int palette_put(VncPalette *palette, uint32_t color)
|
int palette_put(VncPalette *palette, uint32_t color)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user