Branch: Tag:

2016-06-15

2016-06-15 14:11:12 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Concurrent.Promise: Fixed potential backtrace in destroy().

destroy() now uses unlocked_failure() to avoid potential recursive
mutex locks.

Also converted some comments to AutoDoc.

1:   //! Module for handling multiple concurrent events. + //! + //! The @[Future] and @[Promise] API was inspired by + //! @url{https://github.com/couchdeveloper/FutureLib@}.    - /* -  * Inspired by https://github.com/couchdeveloper/FutureLib -  */ -  +    protected enum State {    STATE_PENDING = 0,    STATE_FULFILLED,
330:    protected void destroy()    {    if (!state) { -  failure(({ "Promise broken.\n", backtrace() })); +  unlocked_failure(({ "Promise broken.\n", backtrace() }));    }    }   }