{"action":"opened","issue":{"url":"https://api.github.com/repos/bourgesl/marlin-renderer/issues/12","repository_url":"https://api.github.com/repos/bourgesl/marlin-renderer","labels_url":"https://api.github.com/repos/bourgesl/marlin-renderer/issues/12/labels{/name}","comments_url":"https://api.github.com/repos/bourgesl/marlin-renderer/issues/12/comments","events_url":"https://api.github.com/repos/bourgesl/marlin-renderer/issues/12/events","html_url":"https://github.com/bourgesl/marlin-renderer/issues/12","id":170763401,"number":12,"title":"java.lang.SecurityException is thrown when initializing class org.marlin.pisces.OffHeapArray in version 0.7.4 build 2","user":{"login":"kbotond","id":17504593,"avatar_url":"https://avatars.githubusercontent.com/u/17504593?v=3","gravatar_id":"","url":"https://api.github.com/users/kbotond","html_url":"https://github.com/kbotond","followers_url":"https://api.github.com/users/kbotond/followers","following_url":"https://api.github.com/users/kbotond/following{/other_user}","gists_url":"https://api.github.com/users/kbotond/gists{/gist_id}","starred_url":"https://api.github.com/users/kbotond/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kbotond/subscriptions","organizations_url":"https://api.github.com/users/kbotond/orgs","repos_url":"https://api.github.com/users/kbotond/repos","events_url":"https://api.github.com/users/kbotond/events{/privacy}","received_events_url":"https://api.github.com/users/kbotond/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-08-11T22:37:05Z","updated_at":"2016-08-11T22:37:05Z","closed_at":null,"body":"The exception is thrown in line number 59 of OffHeapArray.java:\r\n`        UNSAFE   = Unsafe.getUnsafe();`\r\n\r\nThis call is supposed to throw a SecurityException, that is why the Unsafe instance is obtained reflectively a few lines earlier:\r\n```java\r\n        Unsafe ref = null;\r\n        try {\r\n            final Field field = Unsafe.class.getDeclaredField(\"theUnsafe\");\r\n            field.setAccessible(true);\r\n            ref = (Unsafe) field.get(null);\r\n        } catch (Exception e) {\r\n            MarlinUtils.logInfo(\"Unable to get sun.misc.Unsafe; exit now.\");\r\n            System.exit(1);\r\n        }\r\n```\r\n\r\nThe value of `ref` should be assigned to `UNSAFE`, like in previous Marlin versions.\r\n"}}
{"actor":{"display_login":"kbotond"}}