[Spice-devel] [PATCH 1/5] tests: allocate memory in a coherent fashion
Frediano Ziglio
fziglio at redhat.com
Tue Dec 15 04:15:09 PST 2015
Do not free memory allocated with C functions (like calloc) using g_free;
although this is possible with default Glib allocator this is not safe.
Also use consistent allocation functions. All other spice-server code
does not use Glib allocations so for coherence do not use them for
watches.
Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
---
server/tests/basic_event_loop.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/server/tests/basic_event_loop.c b/server/tests/basic_event_loop.c
index 85b4da4..c9c2637 100644
--- a/server/tests/basic_event_loop.c
+++ b/server/tests/basic_event_loop.c
@@ -25,6 +25,7 @@
#include "spice/macros.h"
#include "common/ring.h"
+#include "common/mem.h"
#include "test_util.h"
#include "basic_event_loop.h"
@@ -47,7 +48,7 @@ struct SpiceTimer {
static SpiceTimer* timer_add(SpiceTimerFunc func, void *opaque)
{
- SpiceTimer *timer = calloc(sizeof(SpiceTimer), 1);
+ SpiceTimer *timer = spice_malloc0(sizeof(SpiceTimer));
timer->func = func;
timer->opaque = opaque;
@@ -85,7 +86,7 @@ static void timer_start(SpiceTimer *timer, uint32_t ms)
static void timer_remove(SpiceTimer *timer)
{
timer_cancel(timer);
- g_free(timer);
+ free(timer);
}
struct SpiceWatch {
@@ -135,7 +136,7 @@ static SpiceWatch *watch_add(int fd, int event_mask, SpiceWatchFunc func, void *
SpiceWatch *watch;
GIOCondition condition = spice_event_to_condition(event_mask);
- watch = g_new(SpiceWatch, 1);
+ watch = spice_malloc0(sizeof(SpiceWatch));
watch->channel = g_io_channel_unix_new(fd);
watch->source_id = g_io_add_watch(watch->channel, condition, watch_func, watch);
watch->func = func;
@@ -157,7 +158,7 @@ static void watch_remove(SpiceWatch *watch)
{
g_source_remove(watch->source_id);
g_io_channel_unref(watch->channel);
- g_free(watch);
+ free(watch);
}
static void channel_event(int event, SpiceChannelEventInfo *info)
--
2.4.3
More information about the Spice-devel
mailing list