esrille / escudo

The Escudo Web Browser
Apache License 2.0
68 stars 13 forks source link

glDeleteTextures on different thread from generating texture thread raises crash in OSX #68

Closed Constellation closed 11 years ago

Constellation commented 11 years ago

Currently, in OSX, escort crashes when page load happens.

Crash is caused at BoxGL.cpp void deleteImage(uint8_t* image)'s glDeleteTextures.

Investigating it, I've found that gs register based mov code in glDeleteTextures returns unexpected value ($0). I remember that gs is the register related to thread local value.

I think that the crash is caused since glDeleteTextures is called from the different thread from generating texture thread.

ShikiOkasaka commented 11 years ago

Thanks for reporting this issue. I've committed a fix for this at 1051e1dc1646b014bb399f1249f9c8405e1c7847. Can you verify that this is working?

Constellation commented 11 years ago

Great! I've made sure that crash no longer happen. Thanks for your fix.