Commit d7c93e3f authored by Philip Withnall's avatar Philip Withnall

Merge branch 'tsan-gtask' into 'master'

gtask: Separate GTask fields memory locations to avoid data races

See merge request !691
parents 04528e60 fef1ce37
Pipeline #62567 passed with stages
in 14 minutes and 31 seconds
......@@ -563,15 +563,22 @@ struct _GTask {
/* This can’t be in the bit field because we access it from TRACE(). */
gboolean thread_cancelled;
gboolean check_cancellable : 1;
gboolean completed : 1;
gboolean return_on_cancel : 1;
gboolean synchronous : 1;
/* Protected by the lock when task is threaded: */
gboolean thread_complete : 1;
gboolean blocking_other_task : 1;
gboolean return_on_cancel : 1;
gboolean : 0;
/* Unprotected, but written to when task runs in thread: */
gboolean completed : 1;
gboolean had_error : 1;
gboolean result_set : 1;
gboolean ever_returned : 1;
gboolean : 0;
/* Read-only once task runs in thread: */
gboolean check_cancellable : 1;
gboolean synchronous : 1;
gboolean blocking_other_task : 1;
GError *error;
union {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment