Граф коммитов

206 Коммитов

Автор SHA1 Сообщение Дата
Raymond Chen 9c123d1b60 Race condition in resume_foreground(DispatcherQueue)
It's possible for the lambda to run before control
returns to the caller of TryEnqueue. This led to async_suspend
accessing m_queued after it has already been destroyed
by the lambda.

We make the lambda responsible for setting m_queued prior to
resuming the coroutine.  The lambda can infer that the task
was queued by the fact that the lambda is running at all!

If the enqueue fails, then m_queued remains at its initial
value of false.
2019-10-11 12:12:12 -07:00
Kenny Kerr 7c6948c6da feedback 2019-10-10 16:25:11 -07:00
Kenny Kerr a6badcec70 conformance 2019-10-10 16:10:42 -07:00
Kenny Kerr 04ef142b38 no_copy_awaitable 2019-10-10 11:37:01 -07:00
Kenny Kerr 276ebc17ab notify 2019-10-10 08:26:33 -07:00
Kenny Kerr f088d90071 port 2019-10-08 08:19:10 -07:00