Mercurial > pub > ImplabNet
diff Implab/FuncTaskT.cs @ 187:dd4a3590f9c6 ref20160224
Reworked cancelation handling, if the cancel handler isn't specified the OperationCanceledException will be handled by the error handler
Any unhandled OperationCanceledException will cause the promise cancelation
author | cin |
---|---|
date | Tue, 19 Apr 2016 17:35:20 +0300 |
parents | eb793fbbe4ea |
children | 40d7fed4a09e |
line wrap: on
line diff
--- a/Implab/FuncTaskT.cs Tue Apr 19 00:50:14 2016 +0300 +++ b/Implab/FuncTaskT.cs Tue Apr 19 17:35:20 2016 +0300 @@ -12,7 +12,9 @@ if (m_task != null && LockCancelation()) { try { SetResult(m_task(value)); - } catch (Exception err) { + } catch(OperationCanceledException reason) { + HandleCancelInternal(reason); + } catch(Exception err) { HandleErrorInternal(err); } }