The problem:
When a mod is installed and then an update or other part of the mod is installed from a seperate file then a user selects MERGE. datalooksvalid() will run over the existing mods file structure plus the files from the new update/part. This means the already installed part is guaranteed to return as valid since its been fixed during the first install if it wasnt valid already. Thus the update/part that is being installed using MERGE is never checked for validation itself and will just merge into the existing files without any checks.
The result is the merged in files will be merged in without being fixed or validated.
That causes incorrect file structures that could have been avoided.
datalooksvalid() should not take the already existing files into account but check the part that is newly added.
If REPLACE is chosen all functions as expected.
To Reproduce:
Steps to reproduce the behavior:
- Install a mod that causes fix() to be ran
- Install and update or new part of said mod
- Choose Merge
Environment:
- v2.5.3b11
- Simple Game Implementations for any ue4ss Games were used
The problem:
When a mod is installed and then an update or other part of the mod is installed from a seperate file then a user selects MERGE. datalooksvalid() will run over the existing mods file structure plus the files from the new update/part. This means the already installed part is guaranteed to return as valid since its been fixed during the first install if it wasnt valid already. Thus the update/part that is being installed using MERGE is never checked for validation itself and will just merge into the existing files without any checks.
The result is the merged in files will be merged in without being fixed or validated.
That causes incorrect file structures that could have been avoided.
datalooksvalid() should not take the already existing files into account but check the part that is newly added.
If REPLACE is chosen all functions as expected.
To Reproduce:
Steps to reproduce the behavior:
Environment: