RFE: allow the game metadata fetch to use crc32 if it's not 0
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 14.1k
- Forks
- 2.2k
- Avg merge
- 7h 35m
- Merged PRs (30d)
- 51
Description
First and foremost consider this:
- Only RetroArch bugs should be filed here. Not core bugs or game bugs
- This is not a forum or a help section, this is strictly developer oriented
Description
I closed the extended attributes RFE because i found out that extended attributes and hardlinks/symbolic links can't be used together (or rather, they overwrite themselves because it's the same inode). Since one of the main usecases of the idea was to use those with softpatches, i prefer to keep the ability to use hardpatches to keep the 'original rom' deduplicated.
But there is alternative, that although it doesn't 'replace' the serial scanning mode, it can easily 'override it' after the fact. It's also more portable than reading extended attributes
Make the crc32 on the playlist entry corresponding to the game to have priority over the label when fetching metadata if it's not "crc32": "00000000|crc" (default for serial scan method)
Then i can use a external tool fill the 'result' of a softpatch crc and override the metadata that way.
Expected behavior
Just a branch. If crc32 is not all zero ("00000000|crc") use it to fetch metadata instead of label.
Actual behavior
Label is always used, even if it's a fuzzy foreign key, or completely wrong in the case of softpatches, with no way to override it as a user.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No file, test, or entry point is named in the issue. Start by locating the playlist metadata-fetching path and the selection between CRC32 and label, then identify the existing tests for metadata lookup. Done means a nonzero playlist CRC32 takes precedence over the label while the all-zero default continues to use the label.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- data
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100