File kvm-qemu-preXX-severe-memory-leak-caused-by-broken-palett.patch of Package kvm.853

From d6e58090fed20e30e6966007bc4df0c04324d9e7 Mon Sep 17 00:00:00 2001
From: Ulrich Obergfell <uobergfe@redhat.com>
Date: Fri, 25 Mar 2011 04:45:54 -0400
Subject: [PATCH] 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>
---
 ui/vnc-palette.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/ui/vnc-palette.c b/ui/vnc-palette.c
index c478060..13ece42 100644
--- a/ui/vnc-palette.c
+++ b/ui/vnc-palette.c
@@ -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)
-- 
1.6.0.2