Skip to content

Commit 97dea65

Browse files
authored
Fix a couple minor Saturn scanning bugs (#18421)
1 parent 8c339fd commit 97dea65

1 file changed

Lines changed: 12 additions & 2 deletions

File tree

tasks/task_database_cue.c

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -742,11 +742,21 @@ int detect_sat_game(intfstream_t *fd, char *s, size_t len, const char *filename)
742742
/** redump serials are built differently for each region **/
743743
switch (region_id)
744744
{
745-
case 'U':
745+
case 'B': /* Brazil/multi-region (BKUT) */
746+
case 'T': /* Taiwan/Asia */
747+
case 'K': /* Korea */
748+
case 'A': /* Americas */
749+
case 'U': /* USA */
746750
if ( raw_game_id[0] == 'M'
747751
&& raw_game_id[1] == 'K'
748752
&& raw_game_id[2] == '-')
749-
strlcpy(s, &raw_game_id[3], len);
753+
{
754+
const char *serial_start = &raw_game_id[3];
755+
/* Strip leading zeros from serial number */
756+
while (*serial_start == '0' && *(serial_start + 1) != '\0')
757+
serial_start++;
758+
strlcpy(s, serial_start, len);
759+
}
750760
else
751761
strlcpy(s, raw_game_id, len);
752762
cue_append_multi_disc_suffix(s, filename);

0 commit comments

Comments
 (0)