summary refs log tree commit diff stats
path: root/lib/pure
diff options
context:
space:
mode:
authorLuca Guzzon <luca.guzzon@gmail.com>2020-11-08 04:51:40 +0100
committerGitHub <noreply@github.com>2020-11-08 11:51:40 +0800
commit49f68122e658ba7bcc13340fe157e276b4033a90 (patch)
tree20e3c73cf24c520ce30d52f01dbb163dac96f90b /lib/pure
parent203bddf307493b1065325759fef549499f2a3fc2 (diff)
downloadNim-49f68122e658ba7bcc13340fe157e276b4033a90.tar.gz
Console apps in Windows can raise OSError (#15874)
Console apps in Windows implementation can raise OSError so I've fixed it, see below some examples for reference:
- https://github.com/nim-lang/Nim/blob/c07807bedf1749fa9d3e826d3d736907fefbe568/lib/pure/terminal.nim#L170
- https://github.com/nim-lang/Nim/blob/c07807bedf1749fa9d3e826d3d736907fefbe568/lib/pure/terminal.nim#L178
- https://github.com/nim-lang/Nim/blob/c07807bedf1749fa9d3e826d3d736907fefbe568/lib/pure/terminal.nim#L191-L192
- https://github.com/nim-lang/Nim/blob/c07807bedf1749fa9d3e826d3d736907fefbe568/lib/pure/terminal.nim#L196-L197
- ...
Diffstat (limited to 'lib/pure')
-rw-r--r--lib/pure/terminal.nim5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/pure/terminal.nim b/lib/pure/terminal.nim
index ac6720771..3bda5b7aa 100644
--- a/lib/pure/terminal.nim
+++ b/lib/pure/terminal.nim
@@ -37,7 +37,10 @@ type
 
 var gTerm {.threadvar.}: owned(PTerminal)
 
-proc newTerminal(): owned(PTerminal) {.gcsafe, raises: [].}
+when defined(windows) and defined(consoleapp):
+  proc newTerminal(): owned(PTerminal) {.gcsafe, raises: [OSError].}
+else:
+  proc newTerminal(): owned(PTerminal) {.gcsafe, raises: [].}
 
 proc getTerminal(): PTerminal {.inline.} =
   if isNil(gTerm):