1234567891011121314151617181920212223 |
- discard """
- output: '''/1/2
- /1
- /
- '''
- """"
- # bug #22001
- import std / [os, strutils]
- proc finOp2(path, name: string): (string, File) = # Find & open FIRST `name`
- var current = path
- while true:
- if current.isRootDir: break # <- current=="" => current.isRootDir
- current = current.parentDir
- let dir = current
- echo dir.replace('\\', '/') # Commenting out try/except below hides bug
- try: result[0] = dir/name; result[1] = open(result[0]); return
- except CatchableError: discard
- discard finOp2("/1/2/3", "4") # All same if this->inside a proc
|