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.
This commit is contained in:
George Sapountzis
2010-03-10 00:43:01 +02:00
parent bae3135515
commit 7cd8f0ef9d

View File

@@ -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')