From 480c71dea576b90ff57573c9962499bf4af91714 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Mon, 26 Oct 2015 06:03:12 -0700 Subject: [PATCH] slirp: Fix g_array_free to correctly handle freeing an unallocateed GArray. Fix #243 --- slirp_glue/glib_qemu_stubs.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/slirp_glue/glib_qemu_stubs.c b/slirp_glue/glib_qemu_stubs.c index bcc87f4f..ec7e5779 100644 --- a/slirp_glue/glib_qemu_stubs.c +++ b/slirp_glue/glib_qemu_stubs.c @@ -300,11 +300,13 @@ gchar * g_array_free (GArray *array, gboolean free_segment) { -gchar *result = free_segment ? NULL : array->data; +gchar *result = ((array == NULL) || free_segment) ? NULL : array->data; -if (free_segment) - free (array->data); -free (array); +if (array != NULL) { + if (free_segment) + free (array->data); + free (array); + } return result; }