{"push_id":691550047,"size":2,"distinct_size":2,"ref":"refs/heads/master","head":"8d8d3bc636e266c4205d3f4ef08592b2ddc8d737","before":"bc85dd04c777df92c5c243c65ab1cb6942825744","commits":[{"sha":"595d4012e6ac124dcf7342281743cb283edd2db8","author":{"email":"94274d0b635748ad8df96c0fc4f19e1ecd3f67e2@microsoft.com","name":"stephentoub"},"message":"Fix race condition in AsyncOperation\n\nThe AsyncOperation type in System.ComponentModel.EventBasedAsync tracks whether it's already been completed, and any subsequent attempts to Post operations through a completed instance are supposed to result in exceptions.  However, the implementation currently doesn't set its completion flag until after it's invoked the completion callback.  This means that if the completion callback then itself attempts to reuse the instance or if it initiates another async operation that does, there's a race condition between the subsequent access to the instance and the setting of the flag. This change fixes up the ordering so that the flag is set prior to invoking the completion callback rather than after.","distinct":true,"url":"https://api.github.com/repos/dotnet/corefx/commits/595d4012e6ac124dcf7342281743cb283edd2db8"},{"sha":"8d8d3bc636e266c4205d3f4ef08592b2ddc8d737","author":{"email":"94274d0b635748ad8df96c0fc4f19e1ecd3f67e2@microsoft.com","name":"Stephen Toub"},"message":"Merge pull request #1938 from stephentoub/fix_asyncoperation_ordering\n\nFix race condition in AsyncOperation setting of completion flag","distinct":true,"url":"https://api.github.com/repos/dotnet/corefx/commits/8d8d3bc636e266c4205d3f4ef08592b2ddc8d737"}]}