{"action":"created","issue":{"url":"https://api.github.com/repos/CodeCollaborate/EclipsePlugin/issues/30","repository_url":"https://api.github.com/repos/CodeCollaborate/EclipsePlugin","labels_url":"https://api.github.com/repos/CodeCollaborate/EclipsePlugin/issues/30/labels{/name}","comments_url":"https://api.github.com/repos/CodeCollaborate/EclipsePlugin/issues/30/comments","events_url":"https://api.github.com/repos/CodeCollaborate/EclipsePlugin/issues/30/events","html_url":"https://github.com/CodeCollaborate/EclipsePlugin/pull/30","id":198084852,"number":30,"title":"fix potential display thread access issue","user":{"login":"jshap70","id":9045475,"avatar_url":"https://avatars.githubusercontent.com/u/9045475?v=3","gravatar_id":"","url":"https://api.github.com/users/jshap70","html_url":"https://github.com/jshap70","followers_url":"https://api.github.com/users/jshap70/followers","following_url":"https://api.github.com/users/jshap70/following{/other_user}","gists_url":"https://api.github.com/users/jshap70/gists{/gist_id}","starred_url":"https://api.github.com/users/jshap70/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jshap70/subscriptions","organizations_url":"https://api.github.com/users/jshap70/orgs","repos_url":"https://api.github.com/users/jshap70/repos","events_url":"https://api.github.com/users/jshap70/events{/privacy}","received_events_url":"https://api.github.com/users/jshap70/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":2,"created_at":"2016-12-29T23:39:17Z","updated_at":"2016-12-30T05:17:38Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/CodeCollaborate/EclipsePlugin/pulls/30","html_url":"https://github.com/CodeCollaborate/EclipsePlugin/pull/30","diff_url":"https://github.com/CodeCollaborate/EclipsePlugin/pull/30.diff","patch_url":"https://github.com/CodeCollaborate/EclipsePlugin/pull/30.patch"},"body":"The `applyPatch` method in client core does a `Display.getDefault().asyncExec(...)` call to actually apply the patch. From my understanding, this means that all of our patching is actually happening on the existing drawing thread, not a _new_ async thread as the name may imply. I think we should be doing a `new Thread{...}` here and then starting it. "},"comment":{"url":"https://api.github.com/repos/CodeCollaborate/EclipsePlugin/issues/comments/269733668","html_url":"https://github.com/CodeCollaborate/EclipsePlugin/pull/30#issuecomment-269733668","issue_url":"https://api.github.com/repos/CodeCollaborate/EclipsePlugin/issues/30","id":269733668,"user":{"login":"fahslaj","id":6913035,"avatar_url":"https://avatars.githubusercontent.com/u/6913035?v=3","gravatar_id":"","url":"https://api.github.com/users/fahslaj","html_url":"https://github.com/fahslaj","followers_url":"https://api.github.com/users/fahslaj/followers","following_url":"https://api.github.com/users/fahslaj/following{/other_user}","gists_url":"https://api.github.com/users/fahslaj/gists{/gist_id}","starred_url":"https://api.github.com/users/fahslaj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fahslaj/subscriptions","organizations_url":"https://api.github.com/users/fahslaj/orgs","repos_url":"https://api.github.com/users/fahslaj/repos","events_url":"https://api.github.com/users/fahslaj/events{/privacy}","received_events_url":"https://api.github.com/users/fahslaj/received_events","type":"User","site_admin":false},"created_at":"2016-12-30T05:17:37Z","updated_at":"2016-12-30T05:17:37Z","body":"I don't think the whole method should be run in a new thread. I think if you just make the part inside that needs the `Display.asyncExec` have it and leave the rest in the synchronous method call, it should be fine."}}
{"actor":{"display_login":"fahslaj"}}