some static analysis cleanup
This commit is contained in:
@@ -676,7 +676,7 @@ static bool ep_parse_param_array(struct effect_parser *ep,
|
||||
ep->cfp.cur_token->str.len))
|
||||
return false;
|
||||
|
||||
param->array_count = strtol(ep->cfp.cur_token->str.array, NULL, 10);
|
||||
param->array_count =(int)strtol(ep->cfp.cur_token->str.array, NULL, 10);
|
||||
|
||||
if (next_token_should_be(&ep->cfp, "]", ";", NULL) == PARSE_EOF)
|
||||
return false;
|
||||
@@ -1100,10 +1100,10 @@ static inline void ep_write_func_func_deps(struct effect_parser *ep,
|
||||
size_t i;
|
||||
for (i = 0; i < func->func_deps.num; i++) {
|
||||
const char *name = func->func_deps.array[i];
|
||||
struct ep_func *func = ep_getfunc(ep, name);
|
||||
struct ep_func *func_dep = ep_getfunc(ep, name);
|
||||
|
||||
if (!func->written) {
|
||||
ep_write_func(ep, shader, func, used_params);
|
||||
if (!func_dep->written) {
|
||||
ep_write_func(ep, shader, func_dep, used_params);
|
||||
dstr_cat(shader, "\n\n");
|
||||
}
|
||||
}
|
||||
@@ -1274,6 +1274,7 @@ static void ep_compile_param(struct effect_parser *ep, size_t idx)
|
||||
|
||||
param->name = bstrdup(param_in->name);
|
||||
param->section = EFFECT_PARAM;
|
||||
param->effect = ep->effect;
|
||||
da_move(param->default_val, param_in->default_val);
|
||||
|
||||
if (strcmp(param_in->type, "bool") == 0)
|
||||
@@ -1337,7 +1338,7 @@ static inline bool ep_compile_pass_shader(struct effect_parser *ep,
|
||||
struct dstr shader_str;
|
||||
struct dstr location;
|
||||
struct darray used_params; /* struct dstr */
|
||||
struct darray *pass_params; /* struct pass_shaderparam */
|
||||
struct darray *pass_params = NULL; /* struct pass_shaderparam */
|
||||
shader_t shader = NULL;
|
||||
bool success = true;
|
||||
|
||||
|
@@ -43,12 +43,12 @@ technique_t effect_gettechnique(effect_t effect, const char *name)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
int technique_begin(technique_t tech)
|
||||
size_t technique_begin(technique_t tech)
|
||||
{
|
||||
tech->effect->cur_technique = tech;
|
||||
tech->effect->graphics->cur_effect = tech->effect;
|
||||
|
||||
return (int)tech->passes.num;
|
||||
return tech->passes.num;
|
||||
}
|
||||
|
||||
void technique_end(technique_t tech)
|
||||
@@ -156,7 +156,7 @@ bool technique_beginpassbyname(technique_t tech,
|
||||
for (i = 0; i < tech->passes.num; i++) {
|
||||
struct effect_pass *pass = tech->passes.array+i;
|
||||
if (strcmp(pass->name, name) == 0) {
|
||||
technique_beginpass(tech, (int)i);
|
||||
technique_beginpass(tech, i);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -190,9 +190,9 @@ void technique_endpass(technique_t tech)
|
||||
tech->effect->cur_pass = NULL;
|
||||
}
|
||||
|
||||
int effect_numparams(effect_t effect)
|
||||
size_t effect_numparams(effect_t effect)
|
||||
{
|
||||
return (int)effect->params.num;
|
||||
return effect->params.num;
|
||||
}
|
||||
|
||||
eparam_t effect_getparambyidx(effect_t effect, size_t param)
|
||||
@@ -220,9 +220,22 @@ eparam_t effect_getparambyname(effect_t effect, const char *name)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static inline bool matching_effect(effect_t effect, eparam_t param)
|
||||
{
|
||||
if (effect != param->effect) {
|
||||
blog(LOG_ERROR, "Effect and effect parameter do not match");
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void effect_getparaminfo(effect_t effect, eparam_t param,
|
||||
struct effect_param_info *info)
|
||||
{
|
||||
if (!matching_effect(effect, param))
|
||||
return;
|
||||
|
||||
info->name = param->name;
|
||||
info->type = param->type;
|
||||
}
|
||||
@@ -241,6 +254,10 @@ static inline void effect_setval_inline(effect_t effect, eparam_t param,
|
||||
const void *data, size_t size)
|
||||
{
|
||||
bool size_changed = param->cur_val.num != size;
|
||||
|
||||
if (!matching_effect(effect, param))
|
||||
return;
|
||||
|
||||
if (size_changed)
|
||||
da_resize(param->cur_val, size);
|
||||
|
||||
|
@@ -56,6 +56,8 @@ struct effect_param {
|
||||
DARRAY(uint8_t) cur_val;
|
||||
DARRAY(uint8_t) default_val;
|
||||
|
||||
effect_t effect;
|
||||
|
||||
/*char *full_name;
|
||||
float scroller_min, scroller_max, scroller_inc, scroller_mul;*/
|
||||
};
|
||||
|
@@ -176,7 +176,7 @@ struct gs_exports {
|
||||
|
||||
void (*shader_destroy)(shader_t shader);
|
||||
int (*shader_numparams)(shader_t shader);
|
||||
sparam_t (*shader_getparambyidx)(shader_t shader, int param);
|
||||
sparam_t (*shader_getparambyidx)(shader_t shader, uint32_t param);
|
||||
sparam_t (*shader_getparambyname)(shader_t shader, const char *name);
|
||||
void (*shader_getparaminfo)(shader_t shader, sparam_t param,
|
||||
struct shader_param_info *info);
|
||||
|
@@ -472,8 +472,7 @@ void gs_normal3f(float x, float y, float z)
|
||||
static inline bool validvertsize(graphics_t graphics, size_t num,
|
||||
const char *name)
|
||||
{
|
||||
if (graphics->using_immediate &&
|
||||
graphics->colors.num == IMMEDIATE_COUNT) {
|
||||
if (graphics->using_immediate && num == IMMEDIATE_COUNT) {
|
||||
blog(LOG_WARNING, "%s: tried to use over %u "
|
||||
"for immediate rendering",
|
||||
name, IMMEDIATE_COUNT);
|
||||
@@ -690,7 +689,7 @@ void gs_resetviewport(void)
|
||||
{
|
||||
uint32_t cx, cy;
|
||||
gs_getsize(&cx, &cy);
|
||||
gs_setviewport(0, 0, cx, cy);
|
||||
gs_setviewport(0, 0, (int)cx, (int)cy);
|
||||
}
|
||||
|
||||
void gs_set2dmode(void)
|
||||
@@ -1222,7 +1221,7 @@ int shader_numparams(shader_t shader)
|
||||
return graphics->exports.shader_numparams(shader);
|
||||
}
|
||||
|
||||
sparam_t shader_getparambyidx(shader_t shader, int param)
|
||||
sparam_t shader_getparambyidx(shader_t shader, uint32_t param)
|
||||
{
|
||||
graphics_t graphics = thread_graphics;
|
||||
return graphics->exports.shader_getparambyidx(shader, param);
|
||||
|
@@ -293,7 +293,7 @@ enum shader_type {
|
||||
EXPORT void shader_destroy(shader_t shader);
|
||||
|
||||
EXPORT int shader_numparams(shader_t shader);
|
||||
EXPORT sparam_t shader_getparambyidx(shader_t shader, int param);
|
||||
EXPORT sparam_t shader_getparambyidx(shader_t shader, uint32_t param);
|
||||
EXPORT sparam_t shader_getparambyname(shader_t shader, const char *name);
|
||||
EXPORT void shader_getparaminfo(shader_t shader, sparam_t param,
|
||||
struct shader_param_info *info);
|
||||
@@ -345,14 +345,14 @@ EXPORT void effect_destroy(effect_t effect);
|
||||
|
||||
EXPORT technique_t effect_gettechnique(effect_t effect, const char *name);
|
||||
|
||||
EXPORT int technique_begin(technique_t technique);
|
||||
EXPORT size_t technique_begin(technique_t technique);
|
||||
EXPORT void technique_end(technique_t technique);
|
||||
EXPORT bool technique_beginpass(technique_t technique, size_t pass);
|
||||
EXPORT bool technique_beginpassbyname(technique_t technique,
|
||||
const char *name);
|
||||
EXPORT void technique_endpass(technique_t technique);
|
||||
|
||||
EXPORT int effect_numparams(effect_t effect);
|
||||
EXPORT size_t effect_numparams(effect_t effect);
|
||||
EXPORT eparam_t effect_getparambyidx(effect_t effect, size_t param);
|
||||
EXPORT eparam_t effect_getparambyname(effect_t effect, const char *name);
|
||||
EXPORT void effect_getparaminfo(effect_t effect, eparam_t param,
|
||||
@@ -389,7 +389,7 @@ EXPORT void effect_setdefault(effect_t effect, eparam_t param);
|
||||
EXPORT texrender_t texrender_create(enum gs_color_format format,
|
||||
enum gs_zstencil_format zsformat);
|
||||
EXPORT void texrender_destroy(texrender_t texrender);
|
||||
EXPORT bool texrender_begin(texrender_t texrender, int cx, int cy);
|
||||
EXPORT bool texrender_begin(texrender_t texrender, uint32_t cx, uint32_t cy);
|
||||
EXPORT void texrender_end(texrender_t texrender);
|
||||
EXPORT void texrender_reset(texrender_t texrender);
|
||||
EXPORT texture_t texrender_gettexture(texrender_t texrender);
|
||||
@@ -681,7 +681,8 @@ static inline uint32_t gs_get_format_bpp(enum gs_color_format format)
|
||||
case GS_DXT1: return 4;
|
||||
case GS_DXT3: return 8;
|
||||
case GS_DXT5: return 8;
|
||||
default: return 0;
|
||||
default:
|
||||
case GS_UNKNOWN: return 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -18,6 +18,7 @@
|
||||
#include <stdlib.h>
|
||||
#include "vec2.h"
|
||||
#include "vec3.h"
|
||||
#include "math-defs.h"
|
||||
#include "math-extra.h"
|
||||
|
||||
void polar_to_cart(struct vec3 *dst, const struct vec3 *v)
|
||||
@@ -70,7 +71,7 @@ float calc_torquef(float val1, float val2, float torque, float min_adjust,
|
||||
float dist;
|
||||
bool over;
|
||||
|
||||
if (val1 == val2)
|
||||
if (close_float(val1, val2, EPSILON))
|
||||
return val1;
|
||||
|
||||
dist = (val2-val1)*torque;
|
||||
|
@@ -55,10 +55,10 @@ void quat_from_axisang(struct quat *dst, const struct axisang *aa)
|
||||
}
|
||||
|
||||
struct f4x4 {
|
||||
float ptr[4][4];
|
||||
float ptr[4][4];
|
||||
};
|
||||
|
||||
void quat_from_matrix(struct quat *dst, const struct matrix3 *m)
|
||||
void quat_from_matrix3(struct quat *dst, const struct matrix3 *m)
|
||||
{
|
||||
float tr = (m->x.x + m->y.y + m->z.z);
|
||||
float inv_half;
|
||||
|
@@ -110,7 +110,7 @@ void shader_sampler_convert(struct shader_sampler *ss,
|
||||
else if (astrcmpi(state, "AddressW") == 0)
|
||||
info->address_w = get_address_mode(value);
|
||||
else if (astrcmpi(state, "MaxAnisotropy") == 0)
|
||||
info->max_anisotropy = strtol(value, NULL, 10);
|
||||
info->max_anisotropy = (int)strtol(value, NULL, 10);
|
||||
/*else if (astrcmpi(state, "BorderColor") == 0)
|
||||
// TODO */
|
||||
}
|
||||
@@ -319,7 +319,7 @@ static inline int sp_check_for_keyword(struct shader_parser *sp,
|
||||
}
|
||||
|
||||
static inline int sp_parse_func_param(struct shader_parser *sp,
|
||||
struct shader_func *func, struct shader_var *var)
|
||||
struct shader_var *var)
|
||||
{
|
||||
int errcode;
|
||||
bool is_uniform = false;
|
||||
@@ -380,7 +380,7 @@ static bool sp_parse_func_params(struct shader_parser *sp,
|
||||
if (!token_is(&sp->cfp, "(") && !token_is(&sp->cfp, ","))
|
||||
cf_adderror_syntax_error(&sp->cfp);
|
||||
|
||||
errcode = sp_parse_func_param(sp, func, &var);
|
||||
errcode = sp_parse_func_param(sp, &var);
|
||||
if (errcode != PARSE_SUCCESS) {
|
||||
shader_var_free(&var);
|
||||
|
||||
@@ -453,7 +453,7 @@ static bool sp_parse_param_array(struct shader_parser *sp,
|
||||
sp->cfp.cur_token->str.len))
|
||||
return false;
|
||||
|
||||
param->array_count = strtol(sp->cfp.cur_token->str.array, NULL, 10);
|
||||
param->array_count =(int)strtol(sp->cfp.cur_token->str.array, NULL, 10);
|
||||
|
||||
if (next_token_should_be(&sp->cfp, "]", ";", NULL) == PARSE_EOF)
|
||||
return false;
|
||||
|
@@ -27,7 +27,7 @@ struct gs_texture_render {
|
||||
texture_t target, prev_target;
|
||||
zstencil_t zs, prev_zs;
|
||||
|
||||
int cx, cy;
|
||||
uint32_t cx, cy;
|
||||
|
||||
enum gs_color_format format;
|
||||
enum gs_zstencil_format zsformat;
|
||||
@@ -57,7 +57,8 @@ void texrender_destroy(texrender_t texrender)
|
||||
}
|
||||
}
|
||||
|
||||
static bool texrender_resetbuffer(texrender_t texrender, int cx, int cy)
|
||||
static bool texrender_resetbuffer(texrender_t texrender, uint32_t cx,
|
||||
uint32_t cy)
|
||||
{
|
||||
texture_destroy(texrender->target);
|
||||
zstencil_destroy(texrender->zs);
|
||||
@@ -85,14 +86,14 @@ static bool texrender_resetbuffer(texrender_t texrender, int cx, int cy)
|
||||
return true;
|
||||
}
|
||||
|
||||
bool texrender_begin(texrender_t texrender, int cx, int cy)
|
||||
bool texrender_begin(texrender_t texrender, uint32_t cx, uint32_t cy)
|
||||
{
|
||||
if (texrender->rendered)
|
||||
return false;
|
||||
|
||||
if (cx == -1)
|
||||
if (cx == 0)
|
||||
cx = gs_getwidth();
|
||||
if (cy == -1)
|
||||
if (cy == 0)
|
||||
cy = gs_getheight();
|
||||
|
||||
assert(cx && cy);
|
||||
|
@@ -128,9 +128,9 @@ static inline void vec3_cross(struct vec3 *dst, const struct vec3 *v1,
|
||||
|
||||
static inline void vec3_neg(struct vec3 *dst, const struct vec3 *v)
|
||||
{
|
||||
dst->x = -dst->x;
|
||||
dst->y = -dst->y;
|
||||
dst->z = -dst->z;
|
||||
dst->x = -v->x;
|
||||
dst->y = -v->y;
|
||||
dst->z = -v->z;
|
||||
}
|
||||
|
||||
static inline float vec3_len(const struct vec3 *v)
|
||||
|
@@ -111,10 +111,10 @@ static inline float vec4_dot(const struct vec4 *v1, const struct vec4 *v2)
|
||||
|
||||
static inline void vec4_neg(struct vec4 *dst, const struct vec4 *v)
|
||||
{
|
||||
dst->x = -dst->x;
|
||||
dst->y = -dst->y;
|
||||
dst->z = -dst->z;
|
||||
dst->w = -dst->w;
|
||||
dst->x = -v->x;
|
||||
dst->y = -v->y;
|
||||
dst->z = -v->z;
|
||||
dst->w = -v->w;
|
||||
}
|
||||
|
||||
static inline float vec4_len(const struct vec4 *v)
|
||||
|
Reference in New Issue
Block a user