- Make some functions static in command.c

- Set returntype to size_t for some functions, avoid strlen
This commit is contained in:
LibretroAdmin 2024-12-28 22:49:03 +01:00
parent ef1b325978
commit 9376b99ea6
3 changed files with 34 additions and 72 deletions

View File

@ -1164,9 +1164,10 @@ void command_event_init_controllers(rarch_system_info_t *sys_info,
} }
#ifdef HAVE_CONFIGFILE #ifdef HAVE_CONFIGFILE
bool command_event_save_config( static size_t command_event_save_config(
const char *config_path, char *s, size_t len) const char *config_path, char *s, size_t len)
{ {
size_t _len = 0;
bool path_exists = !string_is_empty(config_path); bool path_exists = !string_is_empty(config_path);
const char *str = path_exists ? config_path : const char *str = path_exists ? config_path :
path_get(RARCH_PATH_CONFIG); path_get(RARCH_PATH_CONFIG);
@ -1180,74 +1181,56 @@ bool command_event_save_config(
#if IOS #if IOS
char tmp[PATH_MAX_LENGTH] = {0}; char tmp[PATH_MAX_LENGTH] = {0};
fill_pathname_abbreviate_special(tmp, config_path, sizeof(tmp)); fill_pathname_abbreviate_special(tmp, config_path, sizeof(tmp));
snprintf(s, len, "%s \"%s\".", _len = snprintf(s, len, "%s \"%s\".",
msg_hash_to_str(MSG_SAVED_NEW_CONFIG_TO), msg_hash_to_str(MSG_SAVED_NEW_CONFIG_TO),
tmp); tmp);
#else #else
snprintf(s, len, "%s \"%s\".", _len = snprintf(s, len, "%s \"%s\".",
msg_hash_to_str(MSG_SAVED_NEW_CONFIG_TO), msg_hash_to_str(MSG_SAVED_NEW_CONFIG_TO),
config_path); config_path);
#endif #endif
RARCH_LOG("[Config]: %s\n", s); RARCH_LOG("[Config]: %s\n", s);
return true; return _len;
} }
if (!string_is_empty(str)) if (!string_is_empty(str))
{ {
snprintf(s, len, "%s \"%s\".", _len = snprintf(s, len, "%s \"%s\".",
msg_hash_to_str(MSG_FAILED_SAVING_CONFIG_TO), msg_hash_to_str(MSG_FAILED_SAVING_CONFIG_TO),
str); str);
RARCH_ERR("[Config]: %s\n", s); RARCH_ERR("[Config]: %s\n", s);
} }
return false; return _len;
} }
#endif #endif
void command_event_undo_save_state(char *s, size_t len) static size_t command_event_undo_save_state(char *s, size_t len)
{ {
if (content_undo_save_buf_is_empty()) if (content_undo_save_buf_is_empty())
{ return strlcpy(s,
strlcpy(s,
msg_hash_to_str(MSG_NO_SAVE_STATE_HAS_BEEN_OVERWRITTEN_YET), len); msg_hash_to_str(MSG_NO_SAVE_STATE_HAS_BEEN_OVERWRITTEN_YET), len);
return;
}
if (!content_undo_save_state()) if (!content_undo_save_state())
{ return strlcpy(s,
strlcpy(s,
msg_hash_to_str(MSG_FAILED_TO_UNDO_SAVE_STATE), len); msg_hash_to_str(MSG_FAILED_TO_UNDO_SAVE_STATE), len);
return; return strlcpy(s,
}
strlcpy(s,
msg_hash_to_str(MSG_UNDOING_SAVE_STATE), len); msg_hash_to_str(MSG_UNDOING_SAVE_STATE), len);
} }
void command_event_undo_load_state(char *s, size_t len) static size_t command_event_undo_load_state(char *s, size_t len)
{ {
if (content_undo_load_buf_is_empty()) if (content_undo_load_buf_is_empty())
{ return strlcpy(s,
strlcpy(s,
msg_hash_to_str(MSG_NO_STATE_HAS_BEEN_LOADED_YET), msg_hash_to_str(MSG_NO_STATE_HAS_BEEN_LOADED_YET),
len); len);
return;
}
if (!content_undo_load_state()) if (!content_undo_load_state())
{ return snprintf(s, len, "%s \"%s\".",
snprintf(s, len, "%s \"%s\".",
msg_hash_to_str(MSG_FAILED_TO_UNDO_LOAD_STATE), msg_hash_to_str(MSG_FAILED_TO_UNDO_LOAD_STATE),
"RAM"); "RAM");
return;
}
#ifdef HAVE_NETWORKING #ifdef HAVE_NETWORKING
netplay_driver_ctl(RARCH_NETPLAY_CTL_LOAD_SAVESTATE, NULL); netplay_driver_ctl(RARCH_NETPLAY_CTL_LOAD_SAVESTATE, NULL);
#endif #endif
return strlcpy(s,
strlcpy(s,
msg_hash_to_str(MSG_UNDID_LOAD_STATE), len); msg_hash_to_str(MSG_UNDID_LOAD_STATE), len);
} }
@ -1902,11 +1885,11 @@ bool command_event_save_core_config(
/* In case of collision, find an alternative name. */ /* In case of collision, find an alternative name. */
for (i = 0; i < 16; i++) for (i = 0; i < 16; i++)
{ {
size_t _len = strlcpy(tmp, config_path, sizeof(tmp)); size_t __len = strlcpy(tmp, config_path, sizeof(tmp));
if (i) if (i)
_len += snprintf(tmp + _len, sizeof(tmp) - _len, "-%u", i); __len += snprintf(tmp + __len, sizeof(tmp) - __len, "-%u", i);
strlcpy(tmp + _len, ".cfg", sizeof(tmp) - _len); strlcpy(tmp + __len, ".cfg", sizeof(tmp) - __len);
if (!path_is_valid(tmp)) if (!path_is_valid(tmp))
{ {
@ -1937,8 +1920,7 @@ bool command_event_save_core_config(
} }
#ifdef HAVE_CONFIGFILE #ifdef HAVE_CONFIGFILE
command_event_save_config(config_path, msg, sizeof(msg)); _len = command_event_save_config(config_path, msg, sizeof(msg));
_len = strlen(msg);
#endif #endif
if (_len > 0) if (_len > 0)
@ -1983,8 +1965,8 @@ void command_event_save_current_config(enum override_type type)
} }
else else
{ {
command_event_save_config(path_get(RARCH_PATH_CONFIG), msg, sizeof(msg)); _len = command_event_save_config(path_get(RARCH_PATH_CONFIG), msg, sizeof(msg));
runloop_msg_queue_push(msg, strlen(msg), 1, 180, true, NULL, runloop_msg_queue_push(msg, _len, 1, 180, true, NULL,
MESSAGE_QUEUE_ICON_DEFAULT, MESSAGE_QUEUE_CATEGORY_INFO); MESSAGE_QUEUE_ICON_DEFAULT, MESSAGE_QUEUE_CATEGORY_INFO);
} }
} }
@ -2160,15 +2142,13 @@ bool command_event_main_state(unsigned cmd)
movie_stop(input_st); movie_stop(input_st);
} }
#endif #endif
command_event_undo_load_state(msg, sizeof(msg)); _len = command_event_undo_load_state(msg, sizeof(msg));
_len = strlen(msg);
ret = true; ret = true;
break; break;
} }
case CMD_EVENT_UNDO_SAVE_STATE: case CMD_EVENT_UNDO_SAVE_STATE:
command_event_undo_save_state(msg, sizeof(msg)); _len = command_event_undo_save_state(msg, sizeof(msg));
_len = strlen(msg); ret = true;
ret = true;
break; break;
} }
} }

View File

@ -334,16 +334,6 @@ command_t* command_uds_new(void);
bool command_network_send(const char *cmd_); bool command_network_send(const char *cmd_);
#ifdef HAVE_CONFIGFILE
bool command_event_save_config(
const char *config_path,
char *s, size_t len);
#endif
void command_event_undo_save_state(char *s, size_t len);
void command_event_undo_load_state(char *s, size_t len);
void command_event_set_mixer_volume( void command_event_set_mixer_volume(
settings_t *settings, settings_t *settings,
float gain); float gain);

View File

@ -1267,19 +1267,16 @@ static void driver_find_last(const char *label, char *s, size_t len)
* *
* Find previous driver in driver array. * Find previous driver in driver array.
**/ **/
static bool driver_find_prev(const char *label, char *s, size_t len) static size_t driver_find_prev(const char *label, char *s, size_t len)
{ {
int i = driver_find_index(label, s); int i = driver_find_index(label, s);
if (i > 0) if (i > 0)
{ return find_driver_nonempty(label, i - 1, s, len);
find_driver_nonempty(label, i - 1, s, len);
return true;
}
RARCH_WARN( RARCH_WARN(
"Couldn't find any previous driver (current one: \"%s\").\n", s); "Couldn't find any previous driver (current one: \"%s\").\n", s);
return false; return 0;
} }
/** /**
@ -1290,20 +1287,15 @@ static bool driver_find_prev(const char *label, char *s, size_t len)
* *
* Find next driver in driver array. * Find next driver in driver array.
**/ **/
static bool driver_find_next(const char *label, char *s, size_t len) static size_t driver_find_next(const char *label, char *s, size_t len)
{ {
int i = driver_find_index(label, s); int i = driver_find_index(label, s);
if (i >= 0 && string_is_not_equal(s, "null")) if (i >= 0 && string_is_not_equal(s, "null"))
{ return find_driver_nonempty(label, i + 1, s, len);
find_driver_nonempty(label, i + 1, s, len);
return true;
}
RARCH_WARN("%s (current one: \"%s\").\n", RARCH_WARN("%s (current one: \"%s\").\n",
msg_hash_to_str(MSG_COULD_NOT_FIND_ANY_NEXT_DRIVER), msg_hash_to_str(MSG_COULD_NOT_FIND_ANY_NEXT_DRIVER),
s); s);
return false; return 0;
} }
static float audio_driver_monitor_adjust_system_rates( static float audio_driver_monitor_adjust_system_rates(
@ -2005,11 +1997,11 @@ bool driver_ctl(enum driver_ctl_state state, void *data)
case RARCH_DRIVER_CTL_FIND_PREV: case RARCH_DRIVER_CTL_FIND_PREV:
if (!drv) if (!drv)
return false; return false;
return driver_find_prev(drv->label, drv->s, drv->len); return (bool)driver_find_prev(drv->label, drv->s, drv->len);
case RARCH_DRIVER_CTL_FIND_NEXT: case RARCH_DRIVER_CTL_FIND_NEXT:
if (!drv) if (!drv)
return false; return false;
return driver_find_next(drv->label, drv->s, drv->len); return (bool)driver_find_next(drv->label, drv->s, drv->len);
case RARCH_DRIVER_CTL_NONE: case RARCH_DRIVER_CTL_NONE:
default: default:
break; break;
@ -8383,8 +8375,8 @@ bool retroarch_main_quit(void)
if (!(runloop_st->flags & RUNLOOP_FLAG_SHUTDOWN_INITIATED)) if (!(runloop_st->flags & RUNLOOP_FLAG_SHUTDOWN_INITIATED))
{ {
if (settings->bools.savestate_auto_save && if ( settings->bools.savestate_auto_save
runloop_st->current_core_type != CORE_TYPE_DUMMY) && runloop_st->current_core_type != CORE_TYPE_DUMMY)
command_event_save_auto_state(); command_event_save_auto_state();
/* If any save states are in progress, wait /* If any save states are in progress, wait