From b31779c588fbdc1828be42350491ec7786c1d602 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sat, 10 Feb 2018 22:27:38 +0100 Subject: [PATCH] (D3D8/9) Don't do allocation for this struct --- gfx/drivers/d3d8.c | 17 ++++++----------- gfx/drivers/d3d9.c | 17 ++++++----------- 2 files changed, 12 insertions(+), 22 deletions(-) diff --git a/gfx/drivers/d3d8.c b/gfx/drivers/d3d8.c index 04b47d4390..5577878ca4 100644 --- a/gfx/drivers/d3d8.c +++ b/gfx/drivers/d3d8.c @@ -1690,7 +1690,6 @@ static int d3d8_video_texture_load_wrap_d3d(void *data) if (!info) return 0; d3d8_video_texture_load_d3d(info, &id); - free(info); return id; } @@ -1698,21 +1697,17 @@ static uintptr_t d3d8_load_texture(void *video_data, void *data, bool threaded, enum texture_filter_type filter_type) { uintptr_t id = 0; - struct d3d8_texture_info *info = (struct d3d8_texture_info*) - calloc(1, sizeof(*info)); - if (!info) - return 0; + struct d3d8_texture_info info; - info->userdata = video_data; - info->data = data; - info->type = filter_type; + info.userdata = video_data; + info.data = data; + info.type = filter_type; if (threaded) - return video_thread_texture_load(info, + return video_thread_texture_load(&info, d3d8_video_texture_load_wrap_d3d); - d3d8_video_texture_load_d3d(info, &id); - free(info); + d3d8_video_texture_load_d3d(&info, &id); return id; } diff --git a/gfx/drivers/d3d9.c b/gfx/drivers/d3d9.c index d1c02726a3..51bd2fda4d 100644 --- a/gfx/drivers/d3d9.c +++ b/gfx/drivers/d3d9.c @@ -1702,7 +1702,6 @@ static int d3d9_video_texture_load_wrap_d3d(void *data) if (!info) return 0; d3d9_video_texture_load_d3d(info, &id); - free(info); return id; } @@ -1710,21 +1709,17 @@ static uintptr_t d3d9_load_texture(void *video_data, void *data, bool threaded, enum texture_filter_type filter_type) { uintptr_t id = 0; - struct d3d9_texture_info *info = (struct d3d9_texture_info*) - calloc(1, sizeof(*info)); - if (!info) - return 0; + struct d3d9_texture_info info; - info->userdata = video_data; - info->data = data; - info->type = filter_type; + info.userdata = video_data; + info.data = data; + info.type = filter_type; if (threaded) - return video_thread_texture_load(info, + return video_thread_texture_load(&info, d3d9_video_texture_load_wrap_d3d); - d3d9_video_texture_load_d3d(info, &id); - free(info); + d3d9_video_texture_load_d3d(&info, &id); return id; }