From ecec3a109968437e41c3fa2fe9addbc33c3f6b4e Mon Sep 17 00:00:00 2001 From: Michael Jumper Date: Mon, 2 Apr 2012 13:27:28 -0700 Subject: [PATCH] Fix size of palette hash table (should be 0x1000, not 0xFFF), don't free palette until AFTER done... --- libguac/include/palette.h | 2 +- libguac/src/protocol.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/libguac/include/palette.h b/libguac/include/palette.h index ce6256f0..7db3379e 100644 --- a/libguac/include/palette.h +++ b/libguac/include/palette.h @@ -51,7 +51,7 @@ typedef struct guac_palette_entry { typedef struct guac_palette { - guac_palette_entry entries[0xFFF]; + guac_palette_entry entries[0x1000]; png_color colors[256]; int size; diff --git a/libguac/src/protocol.c b/libguac/src/protocol.c index e5ab832c..5e0bdbaf 100644 --- a/libguac/src/protocol.c +++ b/libguac/src/protocol.c @@ -308,8 +308,6 @@ int __guac_socket_write_length_png(guac_socket* socket, cairo_surface_t* surface } - guac_palette_free(palette); - /* Write image info */ png_set_IHDR( png, @@ -333,6 +331,9 @@ int __guac_socket_write_length_png(guac_socket* socket, cairo_surface_t* surface /* Finish write */ png_destroy_write_struct(&png, &png_info); + /* Free palette */ + guac_palette_free(palette); + /* Free PNG data */ for (y=0; y