mirror of
https://github.com/Abdess/retroarch_system.git
synced 2026-10-23 20:29:06 -05:00
fix: hold every data tree, present or not
export_native and cross_reference read data/ without the shared hold, so a refresh could swap a tree mid-walk. hold_data_dirs skipped a cache not yet on disk, so a refresh could install it between verify and the packs of one pipeline run. Both now hold every registered tree.
This commit is contained in:
1 parent
563ce1ebf2
commit
9bb1a73f91
4 files changed
+41
-3
No files matched your search
@@ -959,6 +959,15 @@ def main() -> None:
|
||||
if args.platform:
|
||||
require_platform(args.platform, args.platforms_dir)
|
||||
|
||||
import contextlib
|
||||
|
||||
from refresh_data_dirs import hold_data_dirs
|
||||
|
||||
# Files resolve against data/: the trees stay put until the process
|
||||
# ends, which releases the hold.
|
||||
held = contextlib.ExitStack()
|
||||
hold_data_dirs(held, load_data_dir_registry(args.platforms_dir))
|
||||
|
||||
profiles = load_emulator_profiles(args.emulators_dir)
|
||||
emulator = args.emulator
|
||||
if emulator:
|
||||
|
||||
Reference in new issue
Block a user