Rhino

Rhino

34M Downloads

Reading mappings from temporary directory fails under certain circumstances.

Vaelzan opened this issue ยท 1 comments

commented

Tested with rhino-fabric-1802.1.14-build.182.jar.

This was reported on Discord a while back, but it looks like the changes for Rhino build 182 caused a regression when checking if the temporary mappings file can be read - Max's recent commit removed the isReadable + isWritable check for the mappings file, instead changing it to check if the temporary directory itself is set to writable (which now doesn't guarantee that the file is either readable nor writable).

Unfortunately, this means that the mappings file can't always be read - if the file (/tmp/rhino_fabric_intermediary_remapped_1.18.2_v1_server.txt in the case I'm looking into) is created by user A and set to R/W by owner only, and user B then tries to read the file, loading the mappings will fail with a java.nio.file.AccessDeniedException in the log.

Some references:

Latest.log from an impacted server: https://gist.github.com/Vaelzan/e196ed9503bd6b2eb1975d7dbe0eabec#file-gistfile1-txt-L338

Original thread on Discord: https://discord.com/channels/303440391124942858/983052433653641216

Lat's original attempted fix: 598e8b1

Max's more recent commit (fixes one issue but removes Lat's check): 932a422

commented

iirc c569ace fixed this, however I've just pushed another commit to hopefully safeguard against these old, broken mappings as well ^^