Fix for #11. Cross port of fix for #1742 from vibe.d

This commit is contained in:
Dentcho Bankov 2017-04-15 00:04:08 +03:00
parent e3c680b0ce
commit aef2936abd
2 changed files with 51 additions and 1 deletions

View file

@ -56,7 +56,7 @@ struct Task {
auto fiber = () @trusted { return Fiber.getThis(); } ();
if (!fiber) return Task.init;
auto tfiber = cast(TaskFiber)fiber;
assert(tfiber !is null, "Invalid or null fiber used to construct Task handle.");
if (!tfiber) return Task.init;
// FIXME: returning a non-.init handle for a finished task might break some layered logic
return () @trusted { return Task(tfiber, tfiber.m_taskCounter); } ();
}