Moved otherwise-unused underscore-prepending code in dlopen backend into an SDL-1.2
authorRyan C. Gordon <icculus@icculus.org>
Sat, 03 Feb 2007 08:11:45 +0000
branchSDL-1.2
changeset 3907 a813fff94165
parent 3906 e3bf970d9494
child 3908 6e41f5d80198
Moved otherwise-unused underscore-prepending code in dlopen backend into an #ifdef. Fixes Bugzilla #354.
src/loadso/dlopen/SDL_sysloadso.c
--- a/src/loadso/dlopen/SDL_sysloadso.c	Tue Jan 23 04:47:11 2007 +0000
+++ b/src/loadso/dlopen/SDL_sysloadso.c	Sat Feb 03 08:11:45 2007 +0000
@@ -45,12 +45,19 @@
 {
 	void *symbol = dlsym(handle, name);
 	if ( symbol == NULL ) {
+
+#ifdef DLOPEN_NEED_UNDERSCORE
+		/* append an underscore for platforms that need that. */
 		size_t len = 1+SDL_strlen(name)+1;
 		char *_name = SDL_stack_alloc(char, len);
 		_name[0] = '_';
 		SDL_strlcpy(&_name[1], name, len);
+		symbol = dlsym(handle, _name);
+		SDL_stack_free(_name);
+#else
 		symbol = dlsym(handle, name);
-		SDL_stack_free(_name);
+#endif
+
 		if ( symbol == NULL ) {
 			SDL_SetError("Failed loading %s: %s", name, (const char *)dlerror());
 		}