Hi, can someone take a look at issue 11293? There are actually two causes. One on the image side. My solution is to catch DirectoryDoesNotExist in FileList, but maybe there is a better solution. (Don't try to access unreadable directories?). The other one is on the vm-side. This vm uses a windows function (GetFileAttributesEx) that does not work properly for some special windows files (c:\pagefile.sys). My question is, where to put this patch? I attached it to this issue. But there are different squeak/pharo/cog vm sources and I don't know which one uses this function. regards Nicolai
On Github, the pharo-vm has only one place for GetFileAttributesEx and that's in platforms/win32/vm/sqWin32Directory.c l366-368 It is GetFileAttributesExW by the way and inside: int dir_EntryLookup(char *pathString, int pathLength, char* nameString, int nameStringLength, /* outputs: */ char *name, int *nameLength, int *creationDate, int *modificationDate, int *isDirectory, squeakFileOffsetType *sizeIfFile, sqInt *posixPermissions, sqInt *isSymlink) ... if(!GetFileAttributesExW(win32Path, 0, &winAttrs)) { return NO_MORE_ENTRIES; } Don't know about the other flavors. Phil
2013/12/3 phil@highoctane.be <phil@highoctane.be>
On Github, the pharo-vm has only one place for GetFileAttributesEx and that's in
platforms/win32/vm/sqWin32Directory.c l366-368
It is GetFileAttributesExW by the way and inside:
int dir_EntryLookup(char *pathString, int pathLength, char* nameString, int nameStringLength, /* outputs: */ char *name, int *nameLength, int *creationDate, int *modificationDate, int *isDirectory, squeakFileOffsetType *sizeIfFile, sqInt *posixPermissions, sqInt *isSymlink) ...
if(!GetFileAttributesExW(win32Path, 0, &winAttrs)) { return NO_MORE_ENTRIES; }
Don't know about the other flavors.
Phil
Yes, that is the version I used and that I want to patch. I think this is the source for all current pharo-vm. Is pharo.fogbugz.com the right issue tracker for this? Who would review / apply this patch? Nicolai
Right tracker. You can fork, do your changes, and issue a pull request if things look right. Phil
participants (2)
-
Nicolai Hess -
phil@highoctane.be