RomVault's directory rule feature allows you to map DATs to different directories. Typically this is used for mapping certain collections to different drive letters, however a user can technically choose any directory they want. If a directory is chosen that resides somewhere within the RomRoot, then multiple tree paths can be associated with the same file if the RomRoot is ever rescanned.
Steps to reproduce:
Start with a fresh RomVault instance
Place one or more DATs in your DatRoot each in their own folder
Set the directory rule of a DAT to point to a directory location that resides within the RomRoot, this directory should be a unique name that is not shared by any other DATs
Place a rom that would match the DAT in your ToSort
Scan the rom in your ToSort
Find fixes and fix ROMs - the file should be moved to the proper location referencing the DAT rule path
Scan the RomRoot
Notice the path referenced in your directory rule is scanned and the rom shows as a cyan status
Find fixes and notice that RV wants to delete one of the ROMs.
Fix ROMs and notice a double check delete error will occur and indicate that multiple tree paths are referencing the same ROM.
Expected behavior:
RomVault should "reroute" any scanning results to the appropriate DAT rule path by following all directory rules
RomVault should perform a check of all directory rules to reasonably ensure there are no rules that result in a nesting scenario (Note that not all scenarios will be detectable, for example mapping one location to a mapped X:\ drive and another to the equivalent UNC path)
(screenshots: 1, 2, 3, 4, 5)
johnsanc
3 years ago
RomVault's directory rule feature allows you to map DATs to different directories. Typically this is used for mapping certain collections to different drive letters, however a user can technically choose any directory they want. If a directory is chosen that resides somewhere within the RomRoot, then multiple tree paths can be associated with the same file if the RomRoot is ever rescanned.
Steps to reproduce:
Start with a fresh RomVault instance
Place one or more DATs in your DatRoot each in their own folder
Set the directory rule of a DAT to point to a directory location that resides within the RomRoot, this directory should be a unique name that is not shared by any other DATs
Place a rom that would match the DAT in your ToSort
Scan the rom in your ToSort
Find fixes and fix ROMs - the file should be moved to the proper location referencing the DAT rule path
Scan the RomRoot
Notice the path referenced in your directory rule is scanned and the rom shows as a cyan status
Find fixes and notice that RV wants to delete one of the ROMs.
Fix ROMs and notice a double check delete error will occur and indicate that multiple tree paths are referencing the same ROM.
Expected behavior:
RomVault should "reroute" any scanning results to the appropriate DAT rule path by following all directory rules
RomVault should perform a check of all directory rules to reasonably ensure there are no rules that result in a nesting scenario (Note that not all scenarios will be detectable, for example mapping one location to a mapped X:\ drive and another to the equivalent UNC path)
(screenshots: 1, 2, 3, 4, 5)