aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2014-06-06 10:12:52 -0700
committerAlon Zakai <alonzakai@gmail.com>2014-06-06 10:12:52 -0700
commit292bf20c67104f5dede74f0a828eef6bcd2c18b3 (patch)
treed3038fcd937bfdf34c723dc877b95f41c9a2cd61
parenta0b5fa6be83e76bc1ba418495df0307378985572 (diff)
parent076d88d5c28cb65300ed883743e9c444c89c382f (diff)
Merge pull request #2403 from guillaumeblanc/incoming
Fixes glfwGetProcAddress calls that were causing a ReferenceError except...
-rw-r--r--src/deps_info.json1
-rw-r--r--src/library_glfw.js7
-rw-r--r--tests/glfw.c4
3 files changed, 10 insertions, 2 deletions
diff --git a/src/deps_info.json b/src/deps_info.json
index 029a20e1..769a21b5 100644
--- a/src/deps_info.json
+++ b/src/deps_info.json
@@ -3,6 +3,7 @@
"SDL_Init": ["malloc", "free"],
"SDL_GL_GetProcAddress": ["emscripten_GetProcAddress"],
"eglGetProcAddress": ["emscripten_GetProcAddress"],
+ "glfwGetProcAddress": ["emscripten_GetProcAddress", "strstr"],
"emscripten_GetProcAddress": ["strstr"]
}
diff --git a/src/library_glfw.js b/src/library_glfw.js
index 6d539326..6dfea101 100644
--- a/src/library_glfw.js
+++ b/src/library_glfw.js
@@ -417,6 +417,9 @@ var LibraryGLFW = {
glfwSetWindowSizeCallback: function(cbfun) {
GLFW.resizeFunc = cbfun;
+ if (GLFW.resizeFunc) {
+ Runtime.dynCall('vii', GLFW.resizeFunc, [Module['canvas'].width, Module['canvas'].height]);
+ }
},
glfwSetWindowCloseCallback: function(cbfun) {
@@ -507,9 +510,9 @@ var LibraryGLFW = {
return Module.ctx.getSupportedExtensions().indexOf(Pointer_stringify(extension)) > -1;
},
- glfwGetProcAddress__deps: ['glfwGetProcAddress'],
+ glfwGetProcAddress__deps: ['emscripten_GetProcAddress'],
glfwGetProcAddress: function(procname) {
- return _getProcAddress(procname);
+ return _emscripten_GetProcAddress(procname);
},
glfwGetGLVersion: function(major, minor, rev) {
diff --git a/tests/glfw.c b/tests/glfw.c
index 79199d9a..cbdc81fe 100644
--- a/tests/glfw.c
+++ b/tests/glfw.c
@@ -376,6 +376,10 @@ void PullInfo(){
extension = "GL_EXT_framebuffer_object";
printf("'%s' extension is %s.\n", extension, glfwExtensionSupported(extension) ? "supported" : "not supported");
+ extension = "glBindBuffer";
+ void* proc_addr = glfwGetProcAddress(extension);
+ printf("'%s' extension proc address is %p.\n", extension, proc_addr);
+
printf("Sleeping 1 sec...\n");
glfwSleep(1);
printf("...Done.\n");