Branch: refs/heads/Cog Home: https://github.com/OpenSmalltalk/opensmalltalk-vm Commit: 330d6779ad2ecbce1f07131f53d75cd168165f0b https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/330d6779ad2ecbce1f0... Author: Christoph Thiede christoph.thiede@student.hpi.de Date: 2023-08-31 (Thu, 31 Aug 2023)
Changed paths: M platforms/win32/vm/sqWin32Directory.c
Log Message: ----------- Repairs FileDirectory>>#exists for long paths (> 260 characters) on Windows by well-defining an edge case in the Windows implementation of the FilePlugin primitiveDirectoryEntry. Documents the present limitations to syntactic sugar in long file paths in the platform code.
An alternative consideration was to rewrite FileDirectory>>#exists to pass an empty string as file name to the primitive instead of modifying the VM, but strictly speaking, even this would have exploited an undefined behavior in the VM plugin, and an empty file name would be less idiomatic than a single dot.
For the original bug report, see: https://github.com/hpi-swa-teaching/Morphic-Testing-Framework/issues/13 Thanks to Marcel (mt) for his support!
Revision (4): Added example paths to comments and fixed erratum in comment of FilePlugin>>#primitiveDirectoryEntry.
vm-dev@lists.squeakfoundation.org