Fix more static code analysis errors/warnings

This commit is contained in:
libretroadmin 2025-07-17 09:44:19 +02:00
parent 03573db27c
commit 195c19a1c9
9 changed files with 50 additions and 33 deletions

View File

@ -862,7 +862,7 @@ static int16_t input_joypad_axis(
const input_device_driver_t *drv,
unsigned port, uint32_t joyaxis, float normal_mag)
{
int16_t val = ((joyaxis != AXIS_NONE) && drv) ? drv->axis(port, joyaxis) : 0;
int16_t val = ((joyaxis != AXIS_NONE) && drv && drv->axis) ? drv->axis(port, joyaxis) : 0;
if (input_analog_deadzone)
{

View File

@ -11314,6 +11314,7 @@ static void materialui_list_insert(void *userdata,
node->thumbnails.secondary.height = 0;
node->thumbnails.secondary.alpha = 0.0f;
node->thumbnails.secondary.delay_timer = 0.0f;
node->thumbnails.secondary.flags = 0;
node->thumbnails.secondary.flags &= ~GFX_THUMB_FLAG_FADE_ACTIVE;
}
else

View File

@ -3552,7 +3552,9 @@ static void ozone_draw_sidebar(
{
enum msg_hash_enums value_idx = ozone_system_tabs_value[ozone->tabs[i]];
const char *title = msg_hash_to_str(value_idx);
uint32_t text_color = selected
uint32_t text_color = 0;
if (ozone->theme)
text_color = selected
? COLOR_TEXT_ALPHA(ozone->theme->text_selected_rgba, text_alpha)
: COLOR_TEXT_ALPHA(ozone->theme->text_sidebar_rgba, text_alpha);
gfx_display_draw_text(
@ -3609,7 +3611,9 @@ static void ozone_draw_sidebar(
ozone_node_t *node = (ozone_node_t*)ozone->horizontal_list.list[i].userdata;
float *col = NULL;
bool selected = (ozone->categories_selection_ptr == ozone->system_tab_end + 1 + i);
uint32_t text_color = COLOR_TEXT_ALPHA((selected
uint32_t text_color = 0;
if (ozone->theme)
text_color = COLOR_TEXT_ALPHA((selected
? ozone->theme->text_selected_rgba
: ozone->theme->text_sidebar_rgba), text_alpha);

View File

@ -15420,7 +15420,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
{
if (new_exts[_len-1] != '\0')
_len += strlcpy(new_exts + _len, "|", sizeof(new_exts) - _len);
_len += strlcpy(new_exts + _len, "slangp", sizeof(new_exts) - _len);
strlcpy(new_exts + _len, "slangp", sizeof(new_exts) - _len);
}
break;

View File

@ -6314,6 +6314,8 @@ void menu_driver_toggle(
bool input_overlay_enable = false;
#endif
bool video_adaptive_vsync = false;
bool video_vsync = false;
bool video_frame_delay_auto = false;
if (settings)
{
@ -6330,6 +6332,9 @@ void menu_driver_toggle(
input_overlay_hide_in_menu = settings->bools.input_overlay_hide_in_menu;
input_overlay_enable = settings->bools.input_overlay_enable;
#endif
video_adaptive_vsync = settings->bools.video_adaptive_vsync;
video_vsync = settings->bools.video_vsync;
video_frame_delay_auto = settings->bools.video_frame_delay_auto;
}
if (on)
@ -6368,7 +6373,7 @@ void menu_driver_toggle(
if (menu_driver_alive)
{
video_adaptive_vsync = settings->bools.video_adaptive_vsync
video_adaptive_vsync = video_adaptive_vsync
&& video_driver_test_all_flags(GFX_CTX_FLAGS_ADAPTIVE_VSYNC);
#ifdef WIIU
@ -6379,7 +6384,7 @@ void menu_driver_toggle(
menu_st->flags |= MENU_ST_FLAG_ENTRIES_NEED_REFRESH;
/* Menu should always run with swap interval 1 if vsync is on. */
if ( settings->bools.video_vsync
if ( video_vsync
&& current_video->set_nonblock_state)
current_video->set_nonblock_state(
video_driver_data,

View File

@ -598,17 +598,20 @@ explore_state_t *menu_explore_build_list(const char *directory_playlist,
continue;
rdb = &rdbs[rdb_num - 1];
rdb->count++;
entry_crc32 = (uint32_t)strtoul(
(entry->crc32 ? entry->crc32 : ""), NULL, 16);
src.source = entry;
if (entry_crc32)
if (rdb)
{
RHMAP_SET(rdb->playlist_crcs, entry_crc32, src);
}
else
{
RHMAP_SET_STR(rdb->playlist_names, entry->label, src);
rdb->count++;
entry_crc32 = (uint32_t)strtoul(
(entry->crc32 ? entry->crc32 : ""), NULL, 16);
src.source = entry;
if (entry_crc32)
{
RHMAP_SET(rdb->playlist_crcs, entry_crc32, src);
}
else
{
RHMAP_SET_STR(rdb->playlist_names, entry->label, src);
}
}
used_entries++;
}

View File

@ -2129,7 +2129,7 @@ struct string_list *dir_list_new_special(const char *input_dir,
_len += strlcpy(ext_shaders + _len, "slangp", sizeof(ext_shaders) - _len);
if (ext_shaders[_len-1] != '\0')
_len += strlcpy(ext_shaders + _len, "|", sizeof(ext_shaders) - _len);
_len += strlcpy(ext_shaders + _len, "slang", sizeof(ext_shaders) - _len);
strlcpy(ext_shaders + _len, "slang", sizeof(ext_shaders) - _len);
}
exts = ext_shaders;
@ -4251,11 +4251,14 @@ bool command_event(enum event_command cmd, void *data)
* runtime variables, otherwise runahead will
* remain disabled until the user restarts
* RetroArch */
if (!(runloop_st->flags & RUNLOOP_FLAG_RUNAHEAD_AVAILABLE))
runahead_clear_variables(runloop_st);
if (runloop_st)
{
if (!(runloop_st->flags & RUNLOOP_FLAG_RUNAHEAD_AVAILABLE))
runahead_clear_variables(runloop_st);
/* Deallocate preemptive frames */
preempt_deinit(runloop_st);
/* Deallocate preemptive frames */
preempt_deinit(runloop_st);
}
#endif
if (hwr)
@ -4797,6 +4800,7 @@ bool command_event(enum event_command cmd, void *data)
/* init netplay manually */
case CMD_EVENT_NETPLAY_INIT:
{
bool ret;
char tmp_netplay_server[256];
char tmp_netplay_session[256];
char *netplay_server = NULL;
@ -4829,16 +4833,19 @@ bool command_event(enum event_command cmd, void *data)
if (!netplay_port)
netplay_port = settings->uints.netplay_port;
if (!init_netplay(netplay_server, netplay_port, netplay_session))
ret = init_netplay(netplay_server, netplay_port, netplay_session);
if (netplay_session)
free(netplay_session);
netplay_session = NULL;
if (!ret)
{
command_event(CMD_EVENT_NETPLAY_DEINIT, NULL);
if (p_rarch->connect_mitm_id)
{
free(p_rarch->connect_mitm_id);
if (netplay_session)
free(netplay_session);
p_rarch->connect_mitm_id = NULL;
netplay_session = NULL;
}
return false;
}
@ -4846,9 +4853,7 @@ bool command_event(enum event_command cmd, void *data)
if (p_rarch->connect_mitm_id)
{
free(p_rarch->connect_mitm_id);
free(netplay_session);
p_rarch->connect_mitm_id = NULL;
netplay_session = NULL;
}
/* Disable rewind & SRAM autosave if it was enabled
@ -6566,7 +6571,7 @@ static void retroarch_print_help(const char *arg0)
, sizeof(buf) - _len);
#endif
_len = strlcpy(buf + _len,
strlcpy(buf + _len,
" -f, --fullscreen "
"Start the program in fullscreen regardless of config setting.\n"
" --set-shader=PATH "

View File

@ -1074,6 +1074,7 @@ bool input_autoconfigure_disconnect(unsigned port, const char *name)
input_driver_state_t *input_st = input_state_get_ptr();
bool notification_show_autoconfig = settings ? settings->bools.notification_show_autoconfig : true;
bool pause_on_disconnect = settings ? settings->bools.pause_on_disconnect : true;
bool menu_pause_libretro = settings ? settings->bools.menu_pause_libretro : false;
bool core_is_running = (runloop_state_get_ptr()->flags & RUNLOOP_FLAG_CORE_RUNNING) ? true : false;
if (port >= MAX_INPUT_DEVICES)
@ -1122,8 +1123,8 @@ bool input_autoconfigure_disconnect(unsigned port, const char *name)
if (pause_on_disconnect && core_is_running)
{
#ifdef HAVE_MENU
bool menu_pause_libretro = settings->bools.menu_pause_libretro;
bool menu_is_alive = (menu_state_get_ptr()->flags & MENU_ST_FLAG_ALIVE) ? true : false;
bool menu_is_alive = (menu_state_get_ptr()->flags & MENU_ST_FLAG_ALIVE)
? true : false;
if (menu_pause_libretro && !menu_is_alive)
command_event(CMD_EVENT_MENU_TOGGLE, NULL);

View File

@ -566,10 +566,8 @@ static void task_save_handler(retro_task_t *task)
task_set_error(task, strdup(msg));
task_save_handler_finished(task, state);
return;
}
if (state->written == state->size)
else if (state->written == state->size)
{
char *msg = NULL;