check ERROR_NO_MORE_FILES to prevent walkDir[Rec] to quit prematurely
This commit is contained in:
parent
d0a9fac362
commit
e98a2051ce
1 changed files with 2 additions and 2 deletions
|
|
@ -672,7 +672,7 @@ template walkCommon(pattern: string, filter) =
|
||||||
if dotPos < 0 or idx >= ff.len or ff[idx] == '.' or
|
if dotPos < 0 or idx >= ff.len or ff[idx] == '.' or
|
||||||
pattern[dotPos+1] == '*':
|
pattern[dotPos+1] == '*':
|
||||||
yield splitFile(pattern).dir / extractFilename(ff)
|
yield splitFile(pattern).dir / extractFilename(ff)
|
||||||
if findNextFile(res, f) == 0'i32: break
|
if findNextFile(res, f) == 0'i32 and getLastError() == 18: break # ERROR_NO_MORE_FILES=18
|
||||||
else: # here we use glob
|
else: # here we use glob
|
||||||
var
|
var
|
||||||
f: Glob
|
f: Glob
|
||||||
|
|
@ -782,7 +782,7 @@ iterator walkDir*(dir: string; relative=false): tuple[kind: PathComponent, path:
|
||||||
let xx = if relative: extractFilename(getFilename(f))
|
let xx = if relative: extractFilename(getFilename(f))
|
||||||
else: dir / extractFilename(getFilename(f))
|
else: dir / extractFilename(getFilename(f))
|
||||||
yield (k, xx)
|
yield (k, xx)
|
||||||
if findNextFile(h, f) == 0'i32: break
|
if findNextFile(h, f) == 0'i32 and getLastError() == 18: break # ERROR_NO_MORE_FILES=18
|
||||||
else:
|
else:
|
||||||
var d = opendir(dir)
|
var d = opendir(dir)
|
||||||
if d != nil:
|
if d != nil:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue