Fix the snprintf warnings for everyone this time

== DETAILS
So, basically this back-and-forth is because we used fixed-size
data types (i.e. `uint32_t`) which maps to different primitive data
types on different platforms. So `uint32_t` might be a `long` on some
platforms (e.g. Wii U), while it's just a plain integer on others (PC).
And the format specifier works off primitive data type, not data type
size.

So, to resolve this, we:

- keep `%lx` as the format specifier
- cast the parameter to printf to unsigned long

This is better than the alternatives that could cause problems trying to
cast a long down to an int.
This commit is contained in:
Nathan Strong 2021-09-25 15:08:34 -07:00
parent a3241aa9b2
commit fb86ca6e33
7 changed files with 13 additions and 13 deletions

View file

@ -160,7 +160,7 @@ bool core_backup_get_backup_path(
(unsigned)time_info.tm_hour, (unsigned)time_info.tm_hour,
(unsigned)time_info.tm_min, (unsigned)time_info.tm_min,
(unsigned)time_info.tm_sec, (unsigned)time_info.tm_sec,
crc, (unsigned long)crc,
(unsigned)backup_mode, (unsigned)backup_mode,
FILE_PATH_CORE_BACKUP_EXTENSION); FILE_PATH_CORE_BACKUP_EXTENSION);
@ -748,6 +748,6 @@ bool core_backup_list_get_entry_crc_str(
if (!entry || (len < 9)) if (!entry || (len < 9))
return false; return false;
snprintf(crc, len, "%08lx", entry->crc); snprintf(crc, len, "%08lx", (unsigned long)entry->crc);
return true; return true;
} }

View file

@ -1345,7 +1345,7 @@ static int action_bind_sublabel_netplay_room(
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CONTENT_INFO_CORE_NAME), msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CONTENT_INFO_CORE_NAME),
corename, core_ver, corename, core_ver,
!string_is_equal(gamename, na) ? gamename : na, !string_is_equal(gamename, na) ? gamename : na,
gamecrc); (unsigned long)gamecrc);
} }
else else
{ {
@ -1389,7 +1389,7 @@ static int action_bind_sublabel_netplay_room(
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CONTENT_INFO_CORE_NAME), msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CONTENT_INFO_CORE_NAME),
corename, core_ver, subsystem, corename, core_ver, subsystem,
!string_is_equal(gamename, na) ? gamename : na, !string_is_equal(gamename, na) ? gamename : na,
gamecrc); (unsigned long)gamecrc);
} }
} }
return 0; return 0;

View file

@ -2149,7 +2149,7 @@ static int menu_displaylist_parse_database_entry(menu_handle_t *menu,
crc_str[0] = tmp[0] = thumbnail_content[0] = '\0'; crc_str[0] = tmp[0] = thumbnail_content[0] = '\0';
snprintf(crc_str, sizeof(crc_str), "%08lX", db_info_entry->crc32); snprintf(crc_str, sizeof(crc_str), "%08lX", (unsigned long)db_info_entry->crc32);
/* This allows thumbnails to be shown while viewing database /* This allows thumbnails to be shown while viewing database
* entries... * entries...

View file

@ -623,7 +623,7 @@ bool netplay_lan_ad_server(netplay_t *netplay)
NETPLAY_HOST_STR_LEN); NETPLAY_HOST_STR_LEN);
} }
snprintf(s, sizeof(s), "%ld", content_crc); snprintf(s, sizeof(s), "%ld", (long)content_crc);
strlcpy(ad_packet_buffer.content_crc, s, strlcpy(ad_packet_buffer.content_crc, s,
NETPLAY_HOST_STR_LEN); NETPLAY_HOST_STR_LEN);
@ -851,7 +851,7 @@ static void handshake_password(void *ignore, const char *line)
netplay_t *netplay = handshake_password_netplay; netplay_t *netplay = handshake_password_netplay;
struct netplay_connection *connection = &netplay->connections[0]; struct netplay_connection *connection = &netplay->connections[0];
snprintf(password, sizeof(password), "%08lX", connection->salt); snprintf(password, sizeof(password), "%08lX", (unsigned long)connection->salt);
if (!string_is_empty(line)) if (!string_is_empty(line))
strlcpy(password + 8, line, sizeof(password)-8); strlcpy(password + 8, line, sizeof(password)-8);
@ -1363,7 +1363,7 @@ static bool netplay_handshake_pre_password(netplay_t *netplay,
/* Calculate the correct password hash(es) and compare */ /* Calculate the correct password hash(es) and compare */
correct = false; correct = false;
snprintf(password, sizeof(password), "%08lX", connection->salt); snprintf(password, sizeof(password), "%08lX", (unsigned long)connection->salt);
if (settings->paths.netplay_password[0]) if (settings->paths.netplay_password[0])
{ {

View file

@ -2969,7 +2969,7 @@ static void netplay_announce(struct rarch_state *p_rarch)
"game_name=%s&game_crc=%08lX&port=%d&mitm_server=%s" "game_name=%s&game_crc=%08lX&port=%d&mitm_server=%s"
"&has_password=%d&has_spectate_password=%d&force_mitm=%d" "&has_password=%d&has_spectate_password=%d&force_mitm=%d"
"&retroarch_version=%s&frontend=%s&subsystem_name=%s", "&retroarch_version=%s&frontend=%s&subsystem_name=%s",
username, corename, coreversion, gamename, content_crc, username, corename, coreversion, gamename, (unsigned long)content_crc,
settings->uints.netplay_port, settings->uints.netplay_port,
settings->arrays.netplay_mitm_server, settings->arrays.netplay_mitm_server,
*settings->paths.netplay_password ? 1 : 0, *settings->paths.netplay_password ? 1 : 0,

View file

@ -743,7 +743,7 @@ static int database_info_list_iterate_found_match(
playlist_config_set_path(&_db->playlist_config, db_playlist_path); playlist_config_set_path(&_db->playlist_config, db_playlist_path);
playlist = playlist_init(&_db->playlist_config); playlist = playlist_init(&_db->playlist_config);
snprintf(db_crc, str_len, "%08lX|crc", db_info_entry->crc32); snprintf(db_crc, str_len, "%08lX|crc", (unsigned long)db_info_entry->crc32);
if (entry_path) if (entry_path)
strlcpy(entry_path_str, entry_path, str_len); strlcpy(entry_path_str, entry_path, str_len);
@ -904,7 +904,7 @@ static int task_database_iterate_crc_lookup(
snprintf(query, sizeof(query), snprintf(query, sizeof(query),
"{crc:or(b\"%08lX\",b\"%08lX\")}", "{crc:or(b\"%08lX\",b\"%08lX\")}",
db_state->crc, db_state->archive_crc); (unsigned long)db_state->crc, (unsigned long)db_state->archive_crc);
database_info_list_iterate_new(db_state, query); database_info_list_iterate_new(db_state, query);
} }

View file

@ -241,7 +241,7 @@ static void task_netplay_crc_scan_handler(retro_task_t *task)
RARCH_LOG("[Lobby]: Testing CRC matching for: %s\n", state->content_crc); RARCH_LOG("[Lobby]: Testing CRC matching for: %s\n", state->content_crc);
snprintf(current, sizeof(current), "%lX|crc", content_get_crc()); snprintf(current, sizeof(current), "%lX|crc", (unsigned long)content_get_crc());
RARCH_LOG("[Lobby]: Current content CRC: %s\n", current); RARCH_LOG("[Lobby]: Current content CRC: %s\n", current);
if (string_is_equal(current, state->content_crc)) if (string_is_equal(current, state->content_crc))
@ -448,7 +448,7 @@ bool task_push_netplay_crc_scan(uint32_t crc, char* name,
snprintf(state->content_crc, snprintf(state->content_crc,
sizeof(state->content_crc), sizeof(state->content_crc),
"%08lX|crc", crc); "%08lX|crc", (unsigned long)crc);
strlcpy(state->content_path, strlcpy(state->content_path,
name, sizeof(state->content_path)); name, sizeof(state->content_path));