Fix wait() to allow Future[void].

This commit is contained in:
cheatfate 2019-03-28 00:56:17 +02:00
parent 51c87bf090
commit 7d63a1b54d
No known key found for this signature in database
GPG Key ID: 46ADD633A7201F95

View File

@ -767,6 +767,9 @@ proc wait*[T](fut: Future[T], timeout = InfiniteDuration): Future[T] =
if not retFuture.finished:
if fut.failed:
retFuture.fail(fut.error)
else:
when T is void:
retFuture.complete()
else:
retFuture.complete(fut.read())
if timeout.isInfinite():
@ -775,6 +778,9 @@ proc wait*[T](fut: Future[T], timeout = InfiniteDuration): Future[T] =
if fut.finished:
if fut.failed:
retFuture.fail(fut.error)
else:
when T is void:
retFuture.complete()
else:
retFuture.complete(fut.read())
else: