diff options
author | George Sapountzis <[email protected]> | 2010-03-10 00:43:01 +0200 |
---|---|---|
committer | George Sapountzis <[email protected]> | 2010-03-10 18:44:47 +0200 |
commit | 7cd8f0ef9d905080dc857c4739be9780b24a7fd2 (patch) | |
tree | 1164ea5adb38f45f8333127136e50b4cb31f8616 /src/mesa/glapi/glapi_getproc.c | |
parent | bae31355150f66f7130d76a2ab4d4b735f239c71 (diff) |
glapi: fix bug with tls and relocs
add_dispatch (driver) and maybe get_proc_address (client) may be called before
set_dispatch is called, which results in generate_entrypoint using an unreloced
function template.
Diffstat (limited to 'src/mesa/glapi/glapi_getproc.c')
-rw-r--r-- | src/mesa/glapi/glapi_getproc.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mesa/glapi/glapi_getproc.c b/src/mesa/glapi/glapi_getproc.c index 5a8c6953ac2..295657875dc 100644 --- a/src/mesa/glapi/glapi_getproc.c +++ b/src/mesa/glapi/glapi_getproc.c @@ -405,6 +405,7 @@ _glapi_add_dispatch( const char * const * function_names, unsigned i; int offset = ~0; + init_glapi_relocs_once(); (void) memset( is_static, 0, sizeof( is_static ) ); (void) memset( entry, 0, sizeof( entry ) ); @@ -533,6 +534,8 @@ _glapi_get_proc_address(const char *funcName) _glapi_proc func; struct _glapi_function * entry; + init_glapi_relocs_once(); + #ifdef MANGLE /* skip the prefix on the name */ if (funcName[1] != 'g' || funcName[2] != 'l') |