mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-11-13 21:43:55 -06:00
fix: keep the claims of every core on a file
The first profile reading a requirement hosts the others' claims, and two ways of dropping the host dropped them too. DraStic brings its own usrcheat.dat, and DSPerate, which reads the same file, lost it wherever DraStic runs. A missing file was recorded for its first reader alone: NAPALM.GRP named Raze, Data.rsdk Sonic Mania. A list built for a board without that reader carried what the full list left out, and install.py --target disagreed with the builder on ROCKNIX, KNULLI, Batocera and RetroPie boards.
This commit is contained in:
1 parent
2a6b8b5943
commit
3d2629f652
4 files changed
+89
-8
No files matched your search
@@ -4694,11 +4694,18 @@ def _record_absent(
|
||||
):
|
||||
continue
|
||||
full_dest = extra_full_destination(fe, extras_pfx)
|
||||
if not full_dest:
|
||||
continue
|
||||
if full_dest in seen_destinations or full_dest in omitted_by_destination:
|
||||
if not full_dest or full_dest in seen_destinations:
|
||||
continue
|
||||
source_emu = fe.get("source_profile") or fe.get("source_emulator", "")
|
||||
held = omitted_by_destination.get(full_dest)
|
||||
if held is not None:
|
||||
# Another core reads the same missing file there (Raze and
|
||||
# EDuke32 both open NAPALM.GRP): one omission names them all.
|
||||
claimed = held.get("cores")
|
||||
if (held.get("reason") == "not_found" and claimed and source_emu
|
||||
and source_emu not in claimed):
|
||||
held["cores"] = sorted([*claimed, source_emu])
|
||||
continue
|
||||
systems = _extra_system_ids(fe)
|
||||
record_omission(
|
||||
full_dest, fe, systems[0] if systems else "", "not_found",
|
||||
|
||||
Reference in new issue
Block a user