mirror of
https://github.com/rommapp/romm.git
synced 2026-06-28 06:46:00 +00:00
The archive branch of get_rom_files (introduced in #3412) was missing the RAHasherService.calculate_hash call that exists in the non-archive branch, causing all archive-format ROMs to produce an empty ra_hash during scanning regardless of platform. The RA hash call is now made for archive ROMs, mirroring the existing non-archive behaviour. The RA_BUFFER_HASH_UNSUPPORTED skip logic in RAHasherService already handles disc-based platforms (PSX, PS2, PSP, Saturn, Dreamcast, etc.) so those continue to be excluded automatically. Also improves handling of folder-based multi-file ROMs whose directories contain compressed files. RAHasher cannot process archives via the /* glob and fails with "Could not open file". The fix mirrors the existing CHD folder logic: for cartridge platforms the largest archive in the folder is passed directly to RAHasher for buffer hashing; for disc platforms the call is skipped as buffer hashing is unsupported. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>