diff options
author | Araq <rumpf_a@web.de> | 2018-09-14 11:40:43 +0200 |
---|---|---|
committer | Araq <rumpf_a@web.de> | 2018-09-14 11:40:43 +0200 |
commit | 4ab99537875a763e0540fbbe48d69cad454ca792 (patch) | |
tree | c9e592a392a5e7100593ef5456ebbd30131d840d /lib/system/sysio.nim | |
parent | d2208091fa1e6763fc13d06f339e79528d4efab2 (diff) | |
download | Nim-4ab99537875a763e0540fbbe48d69cad454ca792.tar.gz |
fixes #8961
Diffstat (limited to 'lib/system/sysio.nim')
-rw-r--r-- | lib/system/sysio.nim | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/system/sysio.nim b/lib/system/sysio.nim index 40bbf97dc..df13ab628 100644 --- a/lib/system/sysio.nim +++ b/lib/system/sysio.nim @@ -161,7 +161,7 @@ proc readLine(f: File, line: var TaintedString): bool = var last = cast[ByteAddress](m) - cast[ByteAddress](addr line.string[0]) if last > 0 and line.string[last-1] == '\c': line.string.setLen(last-1) - return fgetsSuccess + return last > 1 or fgetsSuccess # We have to distinguish between two possible cases: # \0\l\0 => line ending in a null character. # \0\l\l => last line without newline, null was put there by fgets. @@ -169,7 +169,7 @@ proc readLine(f: File, line: var TaintedString): bool = if last < pos + sp - 1 and line.string[last+1] != '\0': dec last line.string.setLen(last) - return fgetsSuccess + return last > 0 or fgetsSuccess else: # fgets will have inserted a null byte at the end of the string. dec sp |