From 876cc94d51bfa97c6efdbc630707cf2662c64d24 Mon Sep 17 00:00:00 2001 From: jp9000 Date: Sun, 21 Feb 2016 12:05:04 -0800 Subject: [PATCH] libobs: Fix bug where bool constant size would be 1 (This commit also modifies libobs-d3d11) Boolean constant size should be 4 --- libobs-d3d11/d3d11-shader.cpp | 3 ++- libobs/graphics/effect.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/libobs-d3d11/d3d11-shader.cpp b/libobs-d3d11/d3d11-shader.cpp index 2f9437d5e..f4e27a75a 100644 --- a/libobs-d3d11/d3d11-shader.cpp +++ b/libobs-d3d11/d3d11-shader.cpp @@ -327,7 +327,8 @@ static inline void shader_setval_inline(gs_shader_param *param, void gs_shader_set_bool(gs_sparam_t *param, bool val) { - shader_setval_inline(param, &val, sizeof(bool)); + int b_val = (int)val; + shader_setval_inline(param, &b_val, sizeof(int)); } void gs_shader_set_float(gs_sparam_t *param, float val) diff --git a/libobs/graphics/effect.c b/libobs/graphics/effect.c index 249268930..26623f482 100644 --- a/libobs/graphics/effect.c +++ b/libobs/graphics/effect.c @@ -329,7 +329,8 @@ static inline void effect_setval_inline(gs_eparam_t *param, void gs_effect_set_bool(gs_eparam_t *param, bool val) { - effect_setval_inline(param, &val, sizeof(bool)); + int b_val = (int)val; + effect_setval_inline(param, &b_val, sizeof(int)); } void gs_effect_set_float(gs_eparam_t *param, float val)