Merge pull request #4685 from cheatfate/selevent32
Fix 32bit architecture problems with SelectEvent.
This commit is contained in:
commit
0cb90f3eaf
3 changed files with 5 additions and 5 deletions
|
|
@ -407,8 +407,8 @@ proc selectInto*[T](s: Selector[T], timeout: int,
|
||||||
inc(i)
|
inc(i)
|
||||||
continue
|
continue
|
||||||
elif Event.User in skey.events:
|
elif Event.User in skey.events:
|
||||||
var data: uint = 0
|
var data: uint64 = 0
|
||||||
if posix.read(fdi.cint, addr data, sizeof(uint)) != sizeof(uint):
|
if posix.read(fdi.cint, addr data, sizeof(uint64)) != sizeof(uint64):
|
||||||
let err = osLastError()
|
let err = osLastError()
|
||||||
if err == OSErrorCode(EAGAIN):
|
if err == OSErrorCode(EAGAIN):
|
||||||
inc(i)
|
inc(i)
|
||||||
|
|
|
||||||
|
|
@ -245,7 +245,7 @@ proc selectInto*[T](s: Selector[T], timeout: int,
|
||||||
skey.key.events.incl(Event.Read)
|
skey.key.events.incl(Event.Read)
|
||||||
if Event.User in skey.events:
|
if Event.User in skey.events:
|
||||||
var data: uint64 = 0
|
var data: uint64 = 0
|
||||||
if posix.read(fd, addr data, sizeof(int)) != sizeof(int):
|
if posix.read(fd, addr data, sizeof(uint64)) != sizeof(uint64):
|
||||||
let err = osLastError()
|
let err = osLastError()
|
||||||
if err != OSErrorCode(EAGAIN):
|
if err != OSErrorCode(EAGAIN):
|
||||||
raiseOSError(osLastError())
|
raiseOSError(osLastError())
|
||||||
|
|
|
||||||
|
|
@ -155,9 +155,9 @@ when defined(windows):
|
||||||
result.wsock = wsock
|
result.wsock = wsock
|
||||||
|
|
||||||
proc setEvent*(ev: SelectEvent) =
|
proc setEvent*(ev: SelectEvent) =
|
||||||
var data: int = 1
|
var data: uint64 = 1
|
||||||
if winlean.send(ev.wsock, cast[pointer](addr data),
|
if winlean.send(ev.wsock, cast[pointer](addr data),
|
||||||
cint(sizeof(int)), 0) != sizeof(int):
|
cint(sizeof(uint64)), 0) != sizeof(uint64):
|
||||||
raiseOSError(osLastError())
|
raiseOSError(osLastError())
|
||||||
|
|
||||||
proc close*(ev: SelectEvent) =
|
proc close*(ev: SelectEvent) =
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue