{"action":"created","issue":{"url":"https://api.github.com/repos/openscenegraph/OpenSceneGraph/issues/675","repository_url":"https://api.github.com/repos/openscenegraph/OpenSceneGraph","labels_url":"https://api.github.com/repos/openscenegraph/OpenSceneGraph/issues/675/labels{/name}","comments_url":"https://api.github.com/repos/openscenegraph/OpenSceneGraph/issues/675/comments","events_url":"https://api.github.com/repos/openscenegraph/OpenSceneGraph/issues/675/events","html_url":"https://github.com/openscenegraph/OpenSceneGraph/pull/675","id":390849155,"node_id":"MDExOlB1bGxSZXF1ZXN0MjM4NTIzNzg1","number":675,"title":"Prevent geometry to release shared GLObjects when destroyed","user":{"login":"mp3butcher","id":4062709,"node_id":"MDQ6VXNlcjQwNjI3MDk=","avatar_url":"https://avatars1.githubusercontent.com/u/4062709?v=4","gravatar_id":"","url":"https://api.github.com/users/mp3butcher","html_url":"https://github.com/mp3butcher","followers_url":"https://api.github.com/users/mp3butcher/followers","following_url":"https://api.github.com/users/mp3butcher/following{/other_user}","gists_url":"https://api.github.com/users/mp3butcher/gists{/gist_id}","starred_url":"https://api.github.com/users/mp3butcher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mp3butcher/subscriptions","organizations_url":"https://api.github.com/users/mp3butcher/orgs","repos_url":"https://api.github.com/users/mp3butcher/repos","events_url":"https://api.github.com/users/mp3butcher/events{/privacy}","received_events_url":"https://api.github.com/users/mp3butcher/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2018-12-13T20:34:55Z","updated_at":"2018-12-14T16:15:06Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/openscenegraph/OpenSceneGraph/pulls/675","html_url":"https://github.com/openscenegraph/OpenSceneGraph/pull/675","diff_url":"https://github.com/openscenegraph/OpenSceneGraph/pull/675.diff","patch_url":"https://github.com/openscenegraph/OpenSceneGraph/pull/675.patch"},"body":"fix for https://github.com/openscenegraph/OpenSceneGraph/issues/674\r\nPerhaps too naïve \r\n@robertosfield \r\nWhat do you think of adding a Drawable::destroyVertexArrayState  and associated callback (called in releaseGLObject)?"},"comment":{"url":"https://api.github.com/repos/openscenegraph/OpenSceneGraph/issues/comments/447373167","html_url":"https://github.com/openscenegraph/OpenSceneGraph/pull/675#issuecomment-447373167","issue_url":"https://api.github.com/repos/openscenegraph/OpenSceneGraph/issues/675","id":447373167,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0NzM3MzE2Nw==","user":{"login":"mp3butcher","id":4062709,"node_id":"MDQ6VXNlcjQwNjI3MDk=","avatar_url":"https://avatars1.githubusercontent.com/u/4062709?v=4","gravatar_id":"","url":"https://api.github.com/users/mp3butcher","html_url":"https://github.com/mp3butcher","followers_url":"https://api.github.com/users/mp3butcher/followers","following_url":"https://api.github.com/users/mp3butcher/following{/other_user}","gists_url":"https://api.github.com/users/mp3butcher/gists{/gist_id}","starred_url":"https://api.github.com/users/mp3butcher/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mp3butcher/subscriptions","organizations_url":"https://api.github.com/users/mp3butcher/orgs","repos_url":"https://api.github.com/users/mp3butcher/repos","events_url":"https://api.github.com/users/mp3butcher/events{/privacy}","received_events_url":"https://api.github.com/users/mp3butcher/received_events","type":"User","site_admin":false},"created_at":"2018-12-14T16:15:06Z","updated_at":"2018-12-14T16:15:06Z","author_association":"CONTRIBUTOR","body":"Again more confusion for me:\r\n1/We don't  geometry to release GLObjects as they can be in used by other\r\n2/Drawable::VAS are an exception so we call **not polymorphic** Drawable::releaseGLObject to release them (it release displaylist to but that's not a problem)\r\n3/if I understand what you just write: you are afraid this don't work because releaseGLObject is virtual, do you agree to make them add concrete Drawable::notvirutalreleaseGLObjects but it's seems paranoia to me..:/with gcc at least explicit call to Drawable::releaseGLObject in drawable destructor don't pose problem\r\nThe fix seems to work (all VAO released at the end) but there is a crash at program ends with the  thread model DRAWTHREADPERCONTEXT\r\n"}}
{"actor":{"display_login":"mp3butcher"}}