From bb4888ae22dfb06d5275b3302eca84488bb7d662 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sun, 25 Dec 2016 01:52:40 +0100 Subject: [PATCH] Be more careful with allocations --- gfx/video_state_tracker.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gfx/video_state_tracker.c b/gfx/video_state_tracker.c index 85daa750ce..dc20fa7da8 100644 --- a/gfx/video_state_tracker.c +++ b/gfx/video_state_tracker.c @@ -80,6 +80,7 @@ struct state_tracker state_tracker_t* state_tracker_init(const struct state_tracker_info *info) { unsigned i; + struct state_tracker_internal *tracker_info = NULL; state_tracker_t *tracker = (state_tracker_t*)calloc(1, sizeof(*tracker)); if (!tracker) return NULL; @@ -99,16 +100,17 @@ state_tracker_t* state_tracker_init(const struct state_tracker_info *info) } #endif - tracker->info = (struct state_tracker_internal*) + tracker_info = (struct state_tracker_internal*) calloc(info->info_elem, sizeof(struct state_tracker_internal)); - if (!tracker->info) + if (!tracker_info) { RARCH_ERR("Allocation of state tracker info failed.\n"); free(tracker); return NULL; } + tracker->info = tracker_info; tracker->info_elem = info->info_elem; for (i = 0; i < info->info_elem; i++)