http://d.puremagic.com/issues/show_bug.cgi?id=8291
Vladimir Panteleev <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #1 from Vladimir Panteleev <[email protected]> 2012-12-21 21:31:50 PST --- (In reply to comment #0) > 1) Wrong root handling api/params. > To stat a root directory, the "GetFileAttributes" API must be used instead of > "FindFirstFile". > To stat all files in a root dir, "C:\*" must be passed to FindFirstFile. > In all other cases, a path with [back]slash removed can be passed to > "FindFirstFile". > I know this in crazy, if you don't believe me, read CAREFULLY the > FindFirstFile > docs. > P.S.: > This should make you see that the dirEntries method may have some problems... The following program works as expected, and prints the files/directories in the root of my C: drive: import std.stdio; import std.file; void main() { writeln(dirEntries(`C:\`, SpanMode.shallow)); } Can you clarify the problem? > 2) Crash > The result of FindFirstFile is "enforced" in _init private method and NOT > CAUGHT in the caller public method dirEntry, and this crashes the client app. > It would be better to throw a FileException in _init and catch+rethrow it in > dirEntry. So what is the exact problem? Isn't a FileException thrown in either case? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
