{"action":"created","issue":{"url":"https://api.github.com/repos/libretro/RetroArch/issues/6772","repository_url":"https://api.github.com/repos/libretro/RetroArch","labels_url":"https://api.github.com/repos/libretro/RetroArch/issues/6772/labels{/name}","comments_url":"https://api.github.com/repos/libretro/RetroArch/issues/6772/comments","events_url":"https://api.github.com/repos/libretro/RetroArch/issues/6772/events","html_url":"https://github.com/libretro/RetroArch/pull/6772","id":322560209,"number":6772,"title":"Fix full-screen mode change breaking Secondary Core's environment variables","user":{"login":"Dwedit","id":1743498,"avatar_url":"https://avatars3.githubusercontent.com/u/1743498?v=4","gravatar_id":"","url":"https://api.github.com/users/Dwedit","html_url":"https://github.com/Dwedit","followers_url":"https://api.github.com/users/Dwedit/followers","following_url":"https://api.github.com/users/Dwedit/following{/other_user}","gists_url":"https://api.github.com/users/Dwedit/gists{/gist_id}","starred_url":"https://api.github.com/users/Dwedit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Dwedit/subscriptions","organizations_url":"https://api.github.com/users/Dwedit/orgs","repos_url":"https://api.github.com/users/Dwedit/repos","events_url":"https://api.github.com/users/Dwedit/events{/privacy}","received_events_url":"https://api.github.com/users/Dwedit/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-05-13T03:17:32Z","updated_at":"2018-05-13T03:31:32Z","closed_at":"2018-05-13T03:29:28Z","author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/libretro/RetroArch/pulls/6772","html_url":"https://github.com/libretro/RetroArch/pull/6772","diff_url":"https://github.com/libretro/RetroArch/pull/6772.diff","patch_url":"https://github.com/libretro/RetroArch/pull/6772.patch"},"body":"Fix full-screen mode change breaking Secondary Core's environment variables\r\n\r\n* RunAhead: Remove Environment Hook from primary core\r\n* Modify core option manager to trigger setting the secondary core's dirty environment flag\r\n* RunAhead: Make secondary core reset dirty flag after `RETRO_ENVIRONMENT_GET_VARIABLE` command\r\n\r\nI didn't want the RunAhead feature becoming too intrusive into other parts of the code, however, the function `libretro_get_environment_info` gets called every time you toggle fullscreen, and this resets the environment callback.  So the environment hook system I was using fails.\r\n\r\nEither we change how callbacks work, and let there be proper hook chains, and fix `libretro_get_environment_info`, or we just patch the code for reading environment variables."},"comment":{"url":"https://api.github.com/repos/libretro/RetroArch/issues/comments/388598479","html_url":"https://github.com/libretro/RetroArch/pull/6772#issuecomment-388598479","issue_url":"https://api.github.com/repos/libretro/RetroArch/issues/6772","id":388598479,"user":{"login":"twinaphex","id":1075274,"avatar_url":"https://avatars3.githubusercontent.com/u/1075274?v=4","gravatar_id":"","url":"https://api.github.com/users/twinaphex","html_url":"https://github.com/twinaphex","followers_url":"https://api.github.com/users/twinaphex/followers","following_url":"https://api.github.com/users/twinaphex/following{/other_user}","gists_url":"https://api.github.com/users/twinaphex/gists{/gist_id}","starred_url":"https://api.github.com/users/twinaphex/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/twinaphex/subscriptions","organizations_url":"https://api.github.com/users/twinaphex/orgs","repos_url":"https://api.github.com/users/twinaphex/repos","events_url":"https://api.github.com/users/twinaphex/events{/privacy}","received_events_url":"https://api.github.com/users/twinaphex/received_events","type":"User","site_admin":false},"created_at":"2018-05-13T03:31:32Z","updated_at":"2018-05-13T03:31:32Z","author_association":"OWNER","body":"> Either we change how callbacks work, and let there be proper hook chains, and fix libretro_get_environment_info, or we just patch the code for reading environment variables.\r\n\r\nLet's discuss this further on Discord and let's see two quick proof of concept examples of what both potential solutions could look like, then we can settle on one."}}
{"actor":{"display_login":"twinaphex"}}