Skip to content

Custom scan in the manual scanner should populate core_name and core_path entries per game #18665

@i30817

Description

@i30817

Is there an existing issue for this?

  • This is a bug in RetroArch frontend
  • I have searched the existing issues

Description

Well I'm actually advocating in another pr to remove this option altogether because it breaks thumbnails and game info (database), but there is a worse problem that can be fixed with the title I'm going to explain.

Custom playlists appended with multiple systems only really get the last emulator core associated.

By the way DETECT is a misleading name, it doesn't perform detection. I thought at first it would use db_name in the game entry to find the first core.info file with that db_name to get a core that way, but ofc that doesn't work (db_name in a custom scan is the playlist filename, ie: custom name).

I'd even suggest replacing db_name on a custom scan by doing a reverse lookup based on the core choosen to get a valid database. But unfortunately that won't work (there are cores that are multi system emulators that have more than one possible database, for instance a bunch of the Sony emulators are MS/GG/MD).

Expected behavior

To fix: when the manual scanner populates game entries with a custom scan it should always set core_path and core_name to default_core_path and default_core_name instead of DETECT. Custom can't guarantee that the last emulator core is appropriate to games except during a scan, so using DETECT to save space is wrong.

Steps to reproduce the bug

Use case:

  1. A user wants to make a thematic playlist with games from multiple systems, sees custom and thinks it's for that
  2. They scan two or more different system games directories with a custom name, overwrite to off and different emulator in each scan
  3. They try to load games from the new playlist and those not from the last scan use the emulator from the last scan. Hang or crash

Version/Commit

1.22.2

Bisect Results

No response

Present in the nightly version

Yes, this is reproduced in the nightly build

Platform & operating system

android 15

Affected Cores

No response

Environment information

No response

Relevant log output

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions