Eliot Miranda uploaded a new version of FileAttributesPlugin to project VM Maker: http://source.squeak.org/VMMaker/FileAttributesPlugin.oscog-eem.34.mcz
==================== Summary ====================
Name: FileAttributesPlugin.oscog-eem.34 Author: eem Time: 24 August 2018, 4:13:24.242983 pm UUID: de01e830-af87-405c-8b59-a19cd9af0c05 Ancestors: FileAttributesPlugin.oscog-eem.33
Work around a bug in 64-bit Cygwin that causes PATH_MAX not to be defined.
=============== Diff against FileAttributesPlugin.oscog-eem.33 ===============
Item was changed: ----- Method: FileAttributesPlugin class>>declareCVarsIn: (in category 'translation') ----- declareCVarsIn: cg
self declareC: #('sCLPfn' 'sCOFfn') as: #'void *' in: cg. "Assume the security plugin can be loaded until proven otherwise" cg var: 'hasSecurityPlugin' declareC: 'int hasSecurityPlugin = 1'.
cg addHeaderFile: '<limits.h>'. cg addHeaderFile: '<sys/types.h>'. cg addHeaderFile: '<dirent.h> + #if _WIN32 || _WIN64 + # include <windows.h> + # include <winbase.h> + # define FAIL() { return -1; } + # include "sqWin32File.h" + # if !!defined(PATH_MAX) /* work around bug in 64-bit cygwin; sigh :-( */ + # define PATH_MAX 4096 + # endif - #ifdef _WIN32 - #include <windows.h> - #include <winbase.h> - #define FAIL() { return -1; } - #include "sqWin32File.h" #else + # include "sqUnixCharConv.h" - #include "sqUnixCharConv.h" #endif typedef struct dirptrstruct { + DIR *dp; - DIR *dp; int path_len; + char *path_file; + char path[PATH_MAX+4]; + } osdir;'. - char *path_file; - char path[PATH_MAX+4]; - } osdir;'. cg addHeaderFile: '<sys/stat.h> + #if !!defined(HAVE_LSTAT) && !!defined(_WIN32) && !!defined(_WIN64) + # define HAVE_LSTAT 1 - #if !!defined(HAVE_LSTAT) && !!defined(_WIN32) - #define HAVE_LSTAT 1 #endif'. cg addHeaderFile: '<unistd.h> + /* AKG 2018 - ', self moduleName, '.c translated from class ', self name, ' */'! - /* AKG 2017 - ', self moduleName, '.c translated from class ', self name, ' */'!
vm-dev@lists.squeakfoundation.org