{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/10958","repository_url":"https://api.github.com/repos/dotnet/roslyn","labels_url":"https://api.github.com/repos/dotnet/roslyn/issues/10958/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/roslyn/issues/10958/comments","events_url":"https://api.github.com/repos/dotnet/roslyn/issues/10958/events","html_url":"https://github.com/dotnet/roslyn/pull/10958","id":151765493,"number":10958,"title":"Fix race in ProcessRunner.cs where we might not wait for output","user":{"login":"jasonmalinowski","id":201340,"avatar_url":"https://avatars.githubusercontent.com/u/201340?v=3","gravatar_id":"","url":"https://api.github.com/users/jasonmalinowski","html_url":"https://github.com/jasonmalinowski","followers_url":"https://api.github.com/users/jasonmalinowski/followers","following_url":"https://api.github.com/users/jasonmalinowski/following{/other_user}","gists_url":"https://api.github.com/users/jasonmalinowski/gists{/gist_id}","starred_url":"https://api.github.com/users/jasonmalinowski/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jasonmalinowski/subscriptions","organizations_url":"https://api.github.com/users/jasonmalinowski/orgs","repos_url":"https://api.github.com/users/jasonmalinowski/repos","events_url":"https://api.github.com/users/jasonmalinowski/events{/privacy}","received_events_url":"https://api.github.com/users/jasonmalinowski/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/dotnet/roslyn/labels/cla-already-signed","name":"cla-already-signed","color":"009800"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-04-28T23:28:06Z","updated_at":"2016-04-29T16:27:50Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/dotnet/roslyn/pulls/10958","html_url":"https://github.com/dotnet/roslyn/pull/10958","diff_url":"https://github.com/dotnet/roslyn/pull/10958.diff","patch_url":"https://github.com/dotnet/roslyn/pull/10958.patch"},"body":"It's possible to get Process.OutputDataReceived or ErrorDataReceived\r\nto fire after you've got the Exited message from the process. You must\r\ncall WaitForExit to confirm that everything is completely done before\r\ncontinuing. Otherwise, we return still-mutating lists to the caller\r\nwho started the Process which isn't going to be ready for that.\r\n\r\n*Review:* @dotnet/roslyn-infrastructure, @jaredpar"},"comment":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/comments/215794349","html_url":"https://github.com/dotnet/roslyn/pull/10958#issuecomment-215794349","issue_url":"https://api.github.com/repos/dotnet/roslyn/issues/10958","id":215794349,"user":{"login":"jaredpar","id":146967,"avatar_url":"https://avatars.githubusercontent.com/u/146967?v=3","gravatar_id":"","url":"https://api.github.com/users/jaredpar","html_url":"https://github.com/jaredpar","followers_url":"https://api.github.com/users/jaredpar/followers","following_url":"https://api.github.com/users/jaredpar/following{/other_user}","gists_url":"https://api.github.com/users/jaredpar/gists{/gist_id}","starred_url":"https://api.github.com/users/jaredpar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jaredpar/subscriptions","organizations_url":"https://api.github.com/users/jaredpar/orgs","repos_url":"https://api.github.com/users/jaredpar/repos","events_url":"https://api.github.com/users/jaredpar/events{/privacy}","received_events_url":"https://api.github.com/users/jaredpar/received_events","type":"User","site_admin":false},"created_at":"2016-04-29T16:27:50Z","updated_at":"2016-04-29T16:27:50Z","body":":+1: "}}