@@ -56,9 +56,15 @@ VncPalette *palette_new(size_t max, int bpp)
VncPalette *palette;
palette = qemu_mallocz(sizeof(*palette));
+ palette_init(palette, max, bpp);
+ return palette;
+}
+
+void palette_init(VncPalette *palette, size_t max, int bpp)
+{
+ memset(palette, 0, sizeof (*palette));
palette->max = max;
palette->bpp = bpp;
- return palette;
}
void palette_destroy(VncPalette *palette)
@@ -51,6 +51,7 @@ typedef struct VncPalette {
} VncPalette;
VncPalette *palette_new(size_t max, int bpp);
+void palette_init(VncPalette *palette, size_t max, int bpp);
void palette_destroy(VncPalette *palette);
int palette_put(VncPalette *palette, uint32_t color);
This allow to use palette on the stack instead of always allocating them. Signed-off-by: Corentin Chary <corentincj@iksaif.net> --- ui/vnc-palette.c | 8 +++++++- ui/vnc-palette.h | 1 + 2 files changed, 8 insertions(+), 1 deletions(-)