If two files with the same name but in different paths are passed in to be scanned, the last file listed will overwrite all other previously listed files in the scratch space, which results in a race condition where some files may not be fully scanned.
Perhaps the original files don't need to be copied into the scratch space at all? And only when unarchival or decompression is needed will that scratch space be used.
If two files with the same name but in different paths are passed in to be scanned, the last file listed will overwrite all other previously listed files in the scratch space, which results in a race condition where some files may not be fully scanned.
Perhaps the original files don't need to be copied into the scratch space at all? And only when unarchival or decompression is needed will that scratch space be used.