diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2017-01-27 18:51:46 +0100 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2017-01-27 18:51:46 +0100 |
commit | 1bf78618fea5bd57b0b6ab2dbadd40e1d914b710 (patch) | |
tree | bec83e441dced198e58ffd968215b5396ef0371b /lib/pure/ioselects/ioselectors_poll.nim | |
parent | 68617adb91ecae00725523ae6bf2833fe6c07bd1 (diff) | |
parent | 9c2721c8bb61a8dfd9445b94d1ccb14491ccf450 (diff) | |
download | Nim-1bf78618fea5bd57b0b6ab2dbadd40e1d914b710.tar.gz |
Merge branch 'fix5290' of https://github.com/cheatfate/Nim into cheatfate-fix5290
Diffstat (limited to 'lib/pure/ioselects/ioselectors_poll.nim')
-rw-r--r-- | lib/pure/ioselects/ioselectors_poll.nim | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/pure/ioselects/ioselectors_poll.nim b/lib/pure/ioselects/ioselectors_poll.nim index 26fe60b54..9c6f9796f 100644 --- a/lib/pure/ioselects/ioselectors_poll.nim +++ b/lib/pure/ioselects/ioselectors_poll.nim @@ -199,7 +199,7 @@ proc unregister*[T](s: Selector[T], ev: SelectEvent) = proc newSelectEvent*(): SelectEvent = var fds: array[2, cint] - if posix.pipe(fds) == -1: + if posix.pipe(fds) != 0: raiseIOSelectorsError(osLastError()) setNonBlocking(fds[0]) setNonBlocking(fds[1]) @@ -213,11 +213,11 @@ proc setEvent*(ev: SelectEvent) = raiseIOSelectorsError(osLastError()) proc close*(ev: SelectEvent) = - if posix.close(cint(ev.rfd)) == -1: - raiseIOSelectorsError(osLastError()) - if posix.close(cint(ev.wfd)) == -1: - raiseIOSelectorsError(osLastError()) + let res1 = posix.close(ev.rfd) + let res2 = posix.close(ev.wfd) deallocShared(cast[pointer](ev)) + if res1 != 0 or res2 != 0: + raiseIOSelectorsError(osLastError()) proc selectInto*[T](s: Selector[T], timeout: int, results: var openarray[ReadyKey]): int = |