Use glow instead of gl_generator for GL/GLES bindings#321
Conversation
glow instead of gl_generator for GL/GLES bindings
dce071e to
3ae3cf7
Compare
|
So the problem is that: thread_local! {
pub static GL_FUNCTIONS: Gl = unsafe {Gl::from_loader_function(context::get_proc_address)};
}does not work because glow requires for context to be current, because it does some querying (version, extension). My idea is to simply replace all usages of |
|
Original issue about inconsistent behavior: pcwalton#7 |
|
I believe we could change the behavior to always make new contexts current. |
3d48909 to
df06a2e
Compare
|
This is very close now, macos fails due to not clearing gl error before running create surface. Needs some cleanup (warnings) and updated servo companion PR. |
|
If you rebase this branch on top of #326 then the crash in servo/servo#34328 will go away \o/ |
|
Is this ready to be reviewed now? |
Yes |
mrobinson
left a comment
There was a problem hiding this comment.
Great stuff. I just have a few comments. In addition to what's below, please squash your changes into a single commit. Thank you!
...mple/app/src/androidTest/java/org/mozilla/surfmanthreadsexample/SurfmanInstrumentedTest.java
Outdated
Show resolved
Hide resolved
I will squash them before adding to queue. |
Signed-off-by: sagudev <[email protected]>
See servo/servo#33539.
Note that this PR will expose glow types in surfmans public API.