From 46b21001320510bf0994141eed33c9c8916238a0 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sun, 17 Apr 2016 04:55:58 +0200 Subject: [PATCH] gl_cg_set_mvp - cleanup --- gfx/drivers_shader/shader_gl_cg.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/gfx/drivers_shader/shader_gl_cg.c b/gfx/drivers_shader/shader_gl_cg.c index 9a8cfeeb11..c350e51448 100644 --- a/gfx/drivers_shader/shader_gl_cg.c +++ b/gfx/drivers_shader/shader_gl_cg.c @@ -224,12 +224,13 @@ static void gl_cg_reset_attrib(void *data) static bool gl_cg_set_mvp(void *data, void *shader_data, const math_matrix_4x4 *mat) { cg_shader_data_t *cg_data = (cg_shader_data_t*)shader_data; - if (cg_data && cg_data->prg[cg_data->active_idx].mvp) - { - cgGLSetMatrixParameterfc(cg_data->prg[cg_data->active_idx].mvp, mat->data); - return true; - } + if (!cg_data || !cg_data->prg[cg_data->active_idx].mvp) + goto fallback; + cgGLSetMatrixParameterfc(cg_data->prg[cg_data->active_idx].mvp, mat->data); + return true; + +fallback: gl_ff_matrix(mat); return false; } @@ -257,6 +258,7 @@ static bool gl_cg_set_coords(void *handle_data, void *shader_data, const void *d SET_COORD(cg_data, color, color, 4); return true; + fallback: gl_ff_vertex(coords); return false;